# Python Tutorial

This tutorial is meant as a crash course in Python to quickly get a modeler ready for building, simulating, and optimizing models. It is recommended that modelers supplement this lesson with additional outside resources and courses. Some recommended courses are here:

- [codecademy course](https://www.codecademy.com/learn/learn-python) - 25 hour course that covers python. Basic tutorials are free, can buy pro membership for additional lessons.
- [datacamp python course](https://www.datacamp.com/courses/intro-to-python-for-data-science) - course with free trial for 4 hours. Covers the basics of python in the 4 hours.
- [Python for biologists](https://pythonforbiologists.com/introduction) - collection of tutorials aimed biologists
- [Rosalind Practice Problems](http://rosalind.info/problems/locations/) - practice problems, most are oriented for bioinformatics.

The tutorials are recommended to be completed in this order:

| Order | Folder                                           | Description                                                                                  |
| ----- | ------------------------------------------------ | -------------------------------------------------------------------------------------------- |
| 1.    | [`data_types.ipynb`](data_types.ipynb)           | This explains the basics of data types such as int, floats, strings, lists and dictionaries. |
| 2.    | [`basic_scripting.ipynb`](basic_scripting.ipynb) | This explains how to do basic iterating and check conditions in python.                      |
| 3.    | [`numpy_pandas.ipynb`](numpy_pandas.ipynb)       | This goes over some of common usage of the optional numpy and pandas packages.               |
