A Practical Introduction to Python Programming

A Practical Introduction to Python Programming

A Practical Introduction to Python Programming Brian Heinold Department of Mathematics and Computer Science Mount St. Mary’s University ii ©2012 Brian Heinold Licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported Li- cense Contents I Basics1 1 Getting Started 3 1.1 Installing Python..............................................3 1.2 IDLE......................................................3 1.3 A first program...............................................4 1.4 Typing things in...............................................5 1.5 Getting input.................................................6 1.6 Printing....................................................6 1.7 Variables...................................................7 1.8 Exercises...................................................9 2 For loops 11 2.1 Examples................................................... 11 2.2 The loop variable.............................................. 13 2.3 The range function............................................ 13 2.4 A Trickier Example............................................. 14 2.5 Exercises................................................... 15 3 Numbers 19 3.1 Integers and Decimal Numbers.................................... 19 3.2 Math Operators............................................... 19 3.3 Order of operations............................................ 21 3.4 Random numbers............................................. 21 3.5 Math functions............................................... 21 3.6 Getting help from Python........................................ 22 3.7 Using the Shell as a Calculator..................................... 22 3.8 Exercises................................................... 23 4 If statements 27 4.1 A Simple Example............................................. 27 4.2 Conditional operators........................................... 28 4.3 Common Mistakes............................................. 28 4.4 elif ...................................................... 29 4.5 Exercises................................................... 30 iii iv CONTENTS 5 Miscellaneous Topics I 33 5.1 Counting................................................... 33 5.2 Summing................................................... 34 5.3 Swapping................................................... 35 5.4 Flag variables................................................ 36 5.5 Maxes and mins............................................... 36 5.6 Comments.................................................. 37 5.7 Simple debugging............................................. 37 5.8 Example programs............................................. 38 5.9 Exercises................................................... 40 6 Strings 43 6.1 Basics...................................................... 43 6.2 Concatenation and repetition...................................... 44 6.3 The in operator............................................... 44 6.4 Indexing.................................................... 45 6.5 Slices...................................................... 45 6.6 Changing individual characters of a string............................. 46 6.7 Looping.................................................... 46 6.8 String methods............................................... 47 6.9 Escape characters.............................................. 48 6.10 Examples................................................... 49 6.11 Exercises................................................... 51 7 Lists 57 7.1 Basics...................................................... 57 7.2 Similarities to strings........................................... 58 7.3 Built-in functions.............................................. 59 7.4 List methods................................................. 59 7.5 Miscellaneous................................................ 60 7.6 Examples................................................... 60 7.7 Exercises................................................... 62 8 More with Lists 65 8.1 Lists and the random module..................................... 65 8.2 split ..................................................... 66 8.3 join ...................................................... 67 8.4 List comprehensions............................................ 68 8.5 Using list comprehensions........................................ 69 8.6 Two-dimensional lists........................................... 70 8.7 Exercises................................................... 72 CONTENTS v 9 While loops 75 9.1 Examples................................................... 75 9.2 Infinite loops................................................. 78 9.3 The break statement........................................... 78 9.4 The else statement............................................. 79 9.5 The guessing game, more nicely done................................ 80 9.6 Exercises................................................... 83 10 Miscellaneous Topics II 87 10.1 str, int, float, and list ..................................... 87 10.2 Booleans.................................................... 89 10.3 Shortcuts................................................... 90 10.4 Short-circuiting............................................... 91 10.5 Continuation................................................. 91 10.6 pass ...................................................... 91 10.7 String formatting.............................................. 92 10.8 Nested loops................................................. 93 10.9 Exercises................................................... 95 11 Dictionaries 99 11.1 Basics...................................................... 99 11.2 Dictionary examples............................................ 100 11.3 Working with dictionaries........................................ 101 11.4 Counting words............................................... 102 11.5 Exercises................................................... 104 12 Text Files 109 12.1 Reading from files............................................. 109 12.2 Writing to files................................................ 110 12.3 Examples................................................... 110 12.4 Wordplay................................................... 111 12.5 Exercises................................................... 113 13 Functions 119 13.1 Basics...................................................... 119 13.2 Arguments.................................................. 120 13.3 Returning values.............................................. 121 13.4 Default arguments and keyword arguments............................ 122 13.5 Local variables............................................... 123 13.6 Exercises................................................... 125 14 Object-Oriented Programming 129 14.1 Python is objected-oriented....................................... 129 14.2 Creating your own classes........................................ 130 14.3 Inheritance.................................................. 132 14.4 A playing-card example......................................... 133 vi CONTENTS 14.5 A Tic-tac-toe example........................................... 136 14.6 Further topics................................................ 138 14.7 Exercises................................................... 138 II Graphics 141 15 GUI Programming with Tkinter 143 15.1 Basics...................................................... 143 15.2 Labels..................................................... 144 15.3 grid ...................................................... 145 15.4 Entry boxes.................................................. 146 15.5 Buttons.................................................... 146 15.6 Global variables............................................... 148 15.7 Tic-tac-toe................................................... 149 16 GUI Programming II 155 16.1 Frames..................................................... 155 16.2 Colors..................................................... 156 16.3 Images..................................................... 157 16.4 Canvases................................................... 158 16.5 Check buttons and Radio buttons................................... 159 16.6 Text widget................................................. 160 16.7 Scale widget................................................ 161 16.8 GUI Events.................................................. 162 16.9 Event examples............................................... 164 17 GUI Programming III 169 17.1 Title bar.................................................... 169 17.2 Disabling things............................................... 169 17.3 Getting the state of a widget....................................... 169 17.4 Message boxes................................................ 170 17.5 Destroying things.............................................. 171 17.6 Updating................................................... 171 17.7 Dialogs.................................................... 172 17.8 Menu bars.................................................. 174 17.9 New windows................................................ 174 17.10pack ...................................................... 175 17.11StringVar ................................................. 175 17.12More with GUIs............................................... 176 18 Further Graphical Programming 177 18.1 Python 2 vs Python 3..........................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    263 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us