Programming with Python and Biopython

This lesson is an introduction to programming Python, using Biopython applications as motivation. Please note that this lesson uses Python 3 rather than Python 2.

Prerequisites

Learners need to understand the concepts of files and directories (including the working directory) and how to start a Python interpreter before starting this lesson.

Learners must install Python before class starts: please see the setup instructions for details.

Schedule

10:00 Running and Quitting (Kai) How can I run Python programs?
10:15 Variables and Assignment (Kai) How can I store data in programs?
10:25 Data Types and Type Conversion (Kai) What kinds of data do programs store?
How can I convert one type to another?
10:35 Built-in Functions and Help (Kai) How can I use built-in functions?
How can I find out what they do?
10:55 Error Messages (Kai) What kind of errors can occur in programs?
How can I identify errors when they occur?
11:10 Libraries (Kai) How can I use software that other people have written?
How can I find out what that software does?
11:20 Morning Coffee Break
11:35 Lists and Indexing (Kai) How can I store multiple values?
11:55 For Loops (Kai) How can I make a program do many things?
12:15 Conditionals (Kai) How can programs do different things for different data?
12:30 Sets (Kai) What is a set, and how do I use it?
12:40 Lunch Break
13:10 Biopython (Kai) How do I handle sequence files?
13:30 Writing Functions (Niko) How can I create my own functions?
13:55 Programming Style (Niko) How can I make my programs more readable?
How do most programmers format their code?
14:20 Debugging (Niko) How can I debug my program?
14:45 Defensive Programming (Niko) What sorts of things frequently go wrong in programs?
How can I make my programs more robust?
15:00 Afternoon Coffee Break
15:15 Reading Tabular Data into Data Frames (Niko) How can I read tabular data?
15:30 Pandas Data Frames (Niko) How can I do statistical analysis of tabular data?
15:50 Next Steps (Niko) What else is out there and where do I find it?
16:05 Wrap-Up (Niko / Kai) What have we learned?
16:20 Finish