Python track: introduction
Python is the best language ever! It's so much prettier than java or
C++.
-- Rob Duff, Caltech senior
This is the home page for the python track of CS 11. This information is for
the Spring 2009 term.
Administrative information
All the administrative information for the python track is on this page.
About the Python programming language
Python is an interpreted programming language that was invented by Guido
van Rossum in 1989 and has been developed by him and many other people ever
since. It has many desirable features.
- It's very easy to learn, even for complete beginners.
- It's very easy to use.
- Python code is very easy for other people to read and understand.
- It's cross-platform.
- Both the program and all the source code are freely available.
- It can easily be hooked into C, C++, and java code.
- It is well-designed, extremely flexible, and extremely powerful.
- It has a good collection of basic data types built in to the language.
- There are a huge number of code libraries written for Python. Most of
these are freely available over the internet.
- It supports object-oriented programming like java or C++, but is much
easier to use than either of those languages. Therefore, it's easier to
learn OO programming with python than with java.
- It has a large, very knowledgeable, and very helpful user community.
Things python is particularly good for:
- helping you learn how to program
- writing simple little throwaway scripts for data crunching
- providing a friendly, easily programmable interface to code
written in C, C++ or java
- writing CGI scripts and other internet-related programming
- anything to do with text manipulation
- writing code which has to talk to the operating system or to networks
- and lots more!
Things python is not particularly good for:
- very computationally demanding code (but you can easily link python to
C or C++ libraries that can do the demanding work)
- very safety-critical code, due to the lack of compile-time
type checking
I hope you enjoy learning python. I am certain that it will be worth your
while.
Lectures
Lecture 1
Lecture 2
Lecture 3
Lecture 4
Lecture 5
Assignments
Grades
Current grades for all students are located on this page.
Miscellaneous stuff
References
Python is sufficiently easy to learn that you don't really need to buy a book
to learn it. However, there are a number of good python books available from O'Reilly. In particular, Learning Python by Mark
Lutz is an excellent introduction to the language.
Links