Python in 24 Hours, Sams Teach Yourself, 2nd edition

Published by Sams Publishing (October 1, 2013) © 2014

  • Katie Cunningham
$27.99

  • A print text (hardcover or paperback) 
  • Free shipping
  • Also available for purchase as an ebook from all major ebook resellers, including InformIT.com
In just 24 sessions of one hour or less, Sams Teach Yourself Python in 24 Hours will help you get started fast, master all the core concepts of programming, and build anything from websites to games. Using this book’s straightforward, step-by-step approach, you’ll move from the absolute basics through functions, objects, classes, modules, database integration, and more. Every lesson and case study application builds on what you’ve already learned, giving you a rock-solid foundation for real-world success!
  • 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.
Learn how to…
  • 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

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable upon changing cookie preferences. Disabling cookies may affect video functionality. More info...

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â