Course Meeting Times
Lectures: 5 sessions / week for 2 weeks, 3 hours / session
|1||Variables and types|
|2||Functions, basic recursion|
|3||Control flow: Branching and repetition|
|4||Introduction to objects: Strings and lists|
|5||Project 1: Structuring larger programs|
|6||Python modules, debugging programs|
|7||Introduction to data structures: Dictionaries|
|8||Functions as a type, anonymous functions and list comprehensions|
|9||Project 2: Working in a team|
This is a pass/fail course — attend the classes, do the homework. Attendance is important; email us in advance if you have to miss a class.
There is an optional assignment that you can work on when you have free time, e.g. if you finish the class lab period early. This assignment is completely optional — it was designed to give you a better intuition for programming and to help in later course 6 studies.
This class uses readings from the online textbook How to Think Like a Computer Scientist — it’s always nice to have two perspectives on concepts. You can find this textbook here.
You can get the latest version here.
- Linux and Mac OS X users: You should already have Python installed — to test this, run the command Python in console mode. Note that the first line tells you the version number; you may want to upgrade your installation if you have a version earlier than 2.3.
- Windows users: Grab the Windows installer from the Downloads section. After installation, you can run the IDLE (Python GUI) command from the Start menu.