0804 Fundamentals of Python Programming
0804 Fundamentals of Python Programming
Python
Programming
RA F T
D
Richard L. Halterman
Southern Adventist University
Contents
3.5 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6 Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.6.1 Syntax Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.6.2 Run-time Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.6.3 Logic Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.7 Arithmetic Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.8 More Arithmetic Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.9 Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4 Conditional Execution 67
4.1 Boolean Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.2 Boolean Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3 The Simple if Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.4 The if/else Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.5 Compound Boolean Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.6 The pass Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.7 Floating-point Equality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.8 Nested Conditionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.9 Multi-way Decision Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.10 Multi-way Versus Sequential Conditionals . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.11 Conditional Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.12 Errors in Conditional Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.13 Logic Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.14 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5 Iteration 113
5.1 The while Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.2 Definite Loops vs. Indefinite Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.3 The for Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
5.4 Nested Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.5 Abnormal Loop Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.5.1 The break statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.5.2 The continue Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.6 while/else and for/else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137