The Midwest Big Data Summer School, May 2019
- The Jupyter notebook containing "slides" and code examples, rendered as an html document.
- See the top of the document for sugggestions on using it interactively
- Here you can download the notebook or clone the repository
- Interactive version of How To Think Like a Computer Scientist.
- Interactive textbook based on a classic open-source book. See this page for an overview of the book's features.
- Com S 127 archive page.
- Course materials from an introductory programming course at ISU.
- Codeacademy also has a free, interactive, online Python course.
- Philip Guo's Python Tutor.
- Cool tool for visualizing code execution. Click on "Edit code", paste or type your code, and press the "Visualize Execution" button. Use the "Forward" and "Back" buttons to step through the code. This works only for small, self-contained programs.
- Tutorial-style language overview from python.org.
- Python library reference.
- Documentation page for pandas module.
- Python for Data Analysis, webcast by pandas author Wes McKinney
Python 2 vs Python 3
The differences are obvious only in a few places:
-
- Use of the print keyword: Python 3 requires parentheses around the values to be printed.
- Behavior of the division operator:
- In Python 3, the single slash / operator always performs floating-point division, and a double slash // is integer division.
25 / 10 is 2.5
25 // 10 is 2 - In Python 2, the single slash is integer division if both operands are integers, and floating-point division if at least one operand is floating-point.
25 / 10 is 2
25 / 10.0 is 2.5
25 // 10 is an error
- In Python 3, the single slash / operator always performs floating-point division, and a double slash // is integer division.
- In Python 3, the input(...) function always returns a string. If you are reading numeric values, you need to explicitly convert from string to int or float using the int(...) or float(...) functions. There is no function raw_input as in Python 2.