Introduction to Python

Big Data in Biology Summer School, 2015

UT Austin Center for Computational Biology

View project on GitHub

Welcome to Introduction to Python!

Welcome to the Introduction to Python course, offered by UT Austin's CCBB as part of the 2nd annual Big Data in Biology Summer School!

Stephanie Spielman will be the lead instructor for this course. She is a 4th year Ph.D. student in the Ecology, Evolution, and Behavior program in Claus Wilke's lab. Check out her website here. Eleisha Jackson will be the TA for this course. Eleisha is a 3rd year Ph.D. student in the EEB program, also in Claus Wilke's lab.

Installation Instructions

Before class starts, it is absolutely essential that you get your computer up-and-running for programming! The necessary steps to take depend on what kind of computer you're using (Mac or PC; if you're using Linux, you should already be good to go). Follow the instructions, linked below, that match your computer.

  • PC/Windows Instructions (Note: PC setup can take 1-3 hours, so set aside enough time!). Here is a link for getting set-up with a popular text editor, gedit: https://help.ubuntu.com/community/gedit.
  • Mac Instructions
  • Useful Resources

    Online Resources:

  • The Unix Tutorial for Beginners (http://www.ee.surrey.ac.uk/Teaching/Unix/) is a great resource and starting point for getting comfortable with the command-line environment

  • Google is easily the most valuable resource for figuring things out. If you encounter an issue, chances are somebody else has also encountered it and has asked about it. Googling your error messages is one of the best debugging strategies there is. In particular, try to find links to the website http://www.stackoverflow.com. This forum-based website has all the answers, possibly literally (but they might be super snarky).

  • The popular websites Code Academy and Rosalind are excellent for learning and practicing python and bioinformatics skills. UT has an account with Rosalind, so if you're a UT student, simply log in with your standard UT credentials.
  • Offline Resources:

  • The book Practical Computing for Biologists (website: http://practicalcomputing.org) by Haddock and Dunn provides a really thorough, entry-level overview of introductory computing concepts, including (but not limited to!) Unix and Python. The book's accompanying website is also regularly updated with important tips, examples, and errata.
  • UT Biocomputing Google Group:

  • Post any questions and join in the conversation in the UT Biocomputing google group: https://groups.google.com/forum/#!forum/utbiocomputing


  • Day One: UNIX and Python Variables

  • Day One Slides
  • Day One Exercises
  • Day One Cheatsheet
  • Day One UNIX Exercise Solutions and Day One Python Exercise Solutions

    Day Two: Control Flow in Python

  • Day Two Slides
  • Day Two Exercises
  • Day Two Cheatsheet
  • Day Two Exercise Solutions
  • Day Three: Functions

  • Day Three Slides
  • Day Three Exercises
  • Day Three Exercise Solutions
  • Day Four: File Input/Output and Python Modules

  • Day Four Slides
  • Day Four Exercises
  • Day Four Cheatsheet
  • Reference: Interpreting Error Messages
  • Reference: File Input/Output
  • Day Four Exercise Solutions
  • Supplement: BioPython

  • BioPython Slides
  • BioPython Exercises
  • BioPython Cheatsheet