Python in 24 Hours, Sams Teach Yourself, 2nd edition
Published by Sams Publishing (October 1, 2013) © 2014
- Katie Cunningham
- A print text (hardcover or paperback)Â
- Free shipping
- Also available for purchase as an ebook from all major ebook resellers, including InformIT.com
- Step-by-step instructions carefully walk you through the most common Python development tasks.
- Quizzes and Exercises at the end of each chapter help you test your knowledge.
- Notes present interesting information related to the discussion.
- Tips offer advice or show you easier ways to perform tasks.
- Warnings alert you to possible problems and give you advice on how to avoid them.
- Install and run the right version of Python for your operating system
- Store, manipulate, reformat, combine, and organise information
- Create logic to control how programs run and what they do
- Interact with users or other programs, wherever they are
- Save time and improve reliability by creating reusable functions
- Master Python data types: numbers, text, lists, and dictionaries
- Write object-oriented programs that work better and are easier to improve
- Expand Python classes to make them even more powerful
- Use third-party modules to perform complex tasks without writing new code
- Split programs to make them more maintainable and reusable
- Clearly document your code so others can work with it
- Store data in SQLite databases, write queries, and share data via JSON
- Simplify Python web development with the Flask framework
- Quickly program Python games with PyGame
- Avoid, troubleshoot, and fix problems with your code
A complete rewrite of the first edition by a different author, this book reflects the latest stable versions of Python.
Preface    xiv
Who This Book Is For   xiv
How This Book Is Organized   xiv
Introduction    1
Learning to Program   1
Why Python?   2
Getting Started   2
How This Book Works   3
What to Do If You Get Stuck   3
HOUR 1 Â Installing and Running Python 5
Discovering Your Operating System   5
Setting Up Python on Windows   7
Setting Up Python on a Mac   11
Summary   15
Q&AÂ Â Â 15
Workshop   16
HOUR 2  Putting Numbers to Work in Python    17
Storing Information with Variables   17
Doing Math in Python   20
Comparing Numbers   23
Applying Python Math in the Real World   24
Summary   25
Q&AÂ Â Â 26
Workshop   26
HOUR 3  Logic in Programming    27
Using a Basic if Statement   27
Creating Blocks   28
Adding an else to an if   29
Testing Many Things with elif   30
True and False Variables.   31
Using try/except to Avoid Errors   32
Applying Logic to Real-World Problems   34
Summary   35
Q&AÂ Â Â 35
Workshop   36
HOUR 4  Storing Text in Strings    37
Creating Strings   37
Printing Strings   38
Getting Information About a String   38
Math and Comparison   40
Formatting Strings.   42
Using Strings in the Real World   46
Summary   47
Q&AÂ Â Â 47
Workshop   48
HOUR 5  Processing Input and Output   49
Getting Information from the Command Line   49
Getting a Password   53
Cleaning Up User Input   54
Formatting Output   55
Managing Input and Output in the Real World   57
Summary   58
Q&AÂ Â Â 58
Workshop   58
HOUR 6  Grouping Items in Lists    61
Creating a List   61
Getting Information About a List   63
Manipulating Lists   64
Using Math in Lists   65
Ordering Lists   66
Comparing Lists   67
Using Lists in the Real World   67
Summary   68
Q&AÂ Â Â 68
Workshop   69
HOUR 7  Using Loops to Repeat Code    71
Repeating a Set Number of Times   71
Repeating Only When True   76
Using Loops in the Real World   77
Summary   79
Q&AÂ Â Â 79
Workshop   80
HOUR 8  Using Functions to Create Reusable Code    81
Creating a Basic Function   81
Passing Values to Functions   82
Variables in Functions: Scope   86
Grouping Functions Within a Function   88
Sending a Varying Number of Parameters   88
Using Functions in the Real World   89
Summary   92
Q&AÂ Â Â 92
Workshop   93
HOUR 9  Using Dictionaries to Pair Keys with Values    95
Creating a Dictionary   95
Getting Information About a Dictionary   97
Comparing Dictionaries.   98
Using Dictionaries in the Real World   99
Summary   101
Q&AÂ Â Â 101
Workshop   101
HOUR 10  Making Objects    103
Object-Oriented Programming   103
Planning an Object   107
Making Objects Out of Objects   108
Using Objects in the Real World   110
Summary   111
Q&AÂ Â Â 111
Workshop   111
HOUR 11 Making Classes    113
Making a Basic Class Statement   113
Adding Methods to Classes   114
Setting Up Class Instances   116
Using Classes in the Real World   119
Summary   122
Q&AÂ Â Â 122
Workshop   122
HOUR 12  Expanding Classes to Add Functionality    125
Built-in Extras   125
Class Inheritance   130
When to Expand Classes in the Real World   134
Summary   136
Q&AÂ Â Â 136
Workshop   137
HOUR 13  Using Python’s Modules to Add Functionality    139
Python Packages   139
Using the random Module   140
Using the datetime Module   143
Finding More Modules   145
Using Modules in the Real World   146
Summary   147
Q&AÂ Â Â 147
Workshop   148
HOUR 14  Splitting Up a Program    149
Why Split Up a Program?   149
Deciding How to Break Up Code   150
How Python Finds a Program’s Code   152
Splitting Up Code in the Real World   155
Summary   157
Q&AÂ Â Â 157
Workshop   158
HOUR 15  Providing Documentation for Code    159
The Need for Good Documentation   159
Embedding Comments in Code   160
Explaining Code with Docstrings   162
Including README and INSTALLÂ Â Â 164
Providing Documentation in the Real World   167
Summary   168
Q&AÂ Â Â 168
Workshop   169
HOUR 16  Working with Program Files    171
Reading to and Writing from Files   171
Creating Files   174
Getting Information About a Directory   175
Getting Information About a File   178
Using Files in the Real World   180
Summary   181
Q&AÂ Â Â 181
Workshop   181
HOUR 17 Â Sharing Information with JSON Â Â Â 183
The JSON Format   183
Working with JSON Files   185
Saving Objects as JSONÂ Â Â 188
Creating Custom Dictionaries   189
Using JSON in the Real World   191
Summary   194
Q&AÂ Â Â 194
Workshop   195
HOUR 18  Storing Information in Databases    197
Why Use Databases?   197
Talking to Databases with SQL.   198
Creating a Database   200
Querying the Database   203
Using Databases in the Real World   205
Summary   207
Q&AÂ Â Â 207
Workshop   208
HOUR 19  Using SQL to Get More out of Databases    209
Filtering with WHEREÂ Â Â 210
Sorting with ORDER BYÂ Â Â 214
Getting Unique Items with DISTINCTÂ Â Â 215
Updating Records with UPDATEÂ Â Â 215
Deleting Records with DELETEÂ Â Â 216
Using SQL in the Real World   217
Summary   220
Q&AÂ Â Â 220
Workshop   221
HOUR 20  Developing for the Web with Flask    223
What Is Flask?   223
Installing Flask   225
Making Your First Flask App   228
Adding Templates   231
Using Frameworks in the Real World   237
Summary   238
Q&AÂ Â Â 238
Workshop   239
HOUR 21  Making Games with PyGame    241
What Is PyGame?   241
Installing PyGame   242
Creating Screens   243
Creating Shapes   245
Moving Things Around on the Screen   248
Getting Input from the User   250
Drawing Text.   252
Using PyGame in the Real World   253
Summary   257
Q&AÂ Â Â 257
Workshop   258
HOUR 22  Saving Your Code Properly Through Versioning    259
What Is Versioning?   259
Versioning with Git and GitHub   261
Managing Code in a Repository   263
Experimental Changes with Branches   267
Determining What Not to Push   270
Summary   271
Q&AÂ Â Â 271
Workshop   271
HOUR 23  Fixing Problem Code    273
When Your Code Has a Bug   273
Locating Errors with a Traceback   274
Finding Errors with the pdb Debugger   275
Searching the Internet for Solutions   278
Trying a Fix   279
Finding Outside Support   280
Summary   282
Q&AÂ Â Â 282
Workshop   283
HOUR 24  Taking the Next Steps with Python    285
Interesting Projects   285
Attending Conferences   288
Working with Linux   288
Contributing to Python   290
Contributing to Other Projects   290
Learning Another Language   290
Looking Forward to Python 3Â Â Â 291
Recommended Reading   292
Recommended Websites.   292
Summary   293
Q&AÂ Â Â 293
Workshop   293
Index    295
Â
Â
Katie Cunningham is a Python developer at Cox Media Group. She’s a fervent advocate for Python, open source software, and teaching people how to program. She’s a frequent speaker at open source conferences, such as PyCon and DjangoCon, speaking on beginners’ topics such as someone’s first site in the cloud and making a site that is accessible to everyone.
She also helps organize PyLadies in the DC area, a program designed to increase diversity in the Python community. She has taught classes for the organization, bringing novices from installation to writing their first app in 48 hours.
Katie is an active blogger at her website (http://therealkatie.net ), covering issues such as Python, accessibility, and the trials and tribulations of working from home.
Katie lives in the DC area with her husband and two children.
Need help? Get in touch