# Python Programming

Here is a series of introductions to `Python` programming—programming
oriented towards scientific and mathematical uses. I recommend working
through them in order. We are going to work through one per week in the
order given below. They are the focus of the programming labs.
Keep your chosen Python reference nearby and learn to refer to it. The series
of introductions is intended to get to useful scientific programming quickly
and, in doing so, leaves out many of the
details that a reference will systematically develop.

## iPython

Have `iPython`
running so that you can test what the introductions describe as you read
along.
To get started with `iPython` go to the tutorial.

The introductions are schematic. They assume you will use
`iPython` to probe around and test the features and commands that
are described. If something's confusing, look up the relevant sections in
the `Python` book or in the online `Python` documentation, whose
links are given below.

## Exercises

There are programming
exercises.
These will be assigned each week and are due the following week.

## Programming Labs

- Lab Zero, Getting started and basics:
Exercises 0.

- Lab A: Data Types and Calculating,
Exercises A.

- Lab B: Strings, Lists, Tuples, Loops, Conditionals, File I/O,
Exercises B.

- Part C: Dictionaries, Arrays, Functions, and Modules,
Exercises C.

- Part D: Statistics, Linear Algebra, and Plotting,
Exercises D.

- Part E: One-Dimensional Dynamics and Numerical Integration,
Exercises E.

chaos@ucdavis.edu
Last updated 22 October 2012