Python Basics Including NumPy and SciPy
Mark A. Wickert · 2014
2 Before Numpy 2 2.1 The Environment and Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1.1 Launching the IPython Notebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1.2 Launching the IPython QT Console with the Canopy Editor . . . . . . . . . . . . . . 5 2.1.3 Launching the IPython QT Console From the Terminal . . . . . . . . . . . . . . . . . 6 2.1.4 Launching the Native Python Console From the Terminal . . . . . . . . . . . . . . . . 7 2.1.5 Ending Your Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 Data Types and Simple Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.1 Hello World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.2 float, complex, long, int, str, and boolean . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.1 Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.2 Tuples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3.3 Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.4 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.5 Formatting Strings and Gathering User Input . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.5.1 Formatting Strings and Printing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.5.2 Gathering User Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.6 Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.6.1 If, elif, and else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.6.2 For Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.6.3 While Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.6.4 The Statements break and continue . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.7 Exceptions: try, except, and finally Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.8 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.9 Object Oriented Python: Writing a Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.9.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.9.2 Writing a Simple Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26