Product Cover Image

Programming in Python 3: A Complete Introduction to the Python Language, 2nd Edition

By Mark Summerfield

Published by Addison-Wesley Professional

Published Date: Nov 12, 2009

Description

A Fully Revised Edition Featuring New Material on Coroutines, Debugging, Testing, Parsing, String Formatting, and More

 

Python 3 is the best version of the language yet: It is more powerful, convenient, consistent, and expressive than ever before. Now, leading Python programmer Mark Summerfield demonstrates how to write code that takes full advantage of Python 3’s features and idioms. Programming in Python 3, Second Edition, brings together all the knowledge you need to write any program, use any standard or third-party Python 3 library, and create new library modules of your own.

 

Summerfield draws on his many years of Python experience to share deep insights into Python 3 development you won’t find anywhere else. He begins by illuminating Python’s “beautiful heart”: the eight key elements of Python you need to write robust, high-performance programs. Building on these core elements, he introduces new topics designed to strengthen your practical expertise—one concept and hands-on example at a time. Coverage includes

  • Developing in Python using procedural, objectoriented, and functional programming paradigms
  • Creating custom packages and modules
  • Writing and reading binary, text, and XML files, including optional compression, random access, and text and XML parsing
  • Leveraging advanced data types, collections, control structures, and functions
  • Spreading program workloads across multiple processes and threads
  • Programming SQL databases and key–value DBM files
  • Debugging techniques—and using Test Driven Development to avoid bugs in the first place
  • Utilizing Python’s regular expression mini-language and module
  • Parsing techniques, including how to use the third-party PyParsing and PLY modules
  • Building usable, efficient, GUI-based applications
  • Advanced programming techniques, including generators, function and class decorators, context managers, descriptors, abstract base classes, metaclasses, coroutines, and more

 

Programming in Python 3, Second Edition, serves as both tutorial and language reference. It assumes some prior programming experience, and it is accompanied by extensive downloadable example code—all of it tested with Python 3 on Windows, Linux, and Mac OS X.

 

Table of Contents

List of Tables xv

 

Introduction 1

 

Chapter 1: Rapid Introduction to Procedural Programming 9

Creating and Running Python Programs 9

Python’s “Beautiful Heart” 14

Examples 39

Summary 44

Exercises 47

 

Chapter 2: Data Types 51

Identifiers and Keywords 51

Integral Types 54

Floating-Point Types 58

Strings 65

Examples 94

Summary 102

Exercises 104

 

Chapter 3: Collection Data Types 107

Sequence Types 107

Set Types 120

Mapping Types 126

Iterating and Copying Collections 138

Examples 148

Summary 156

Exercises 158

 

Chapter 4: Control Structures and Functions 159

Control Structures 159

Exception Handling 163

Custom Functions 171

Example: make_html_skeleton.py 185

Summary 191

Exercise 192

 

Chapter 5: Modules 195

Modules and Packages 195

Overview of Python’s Standard Library 212

Summary 230

Exercise 231

 

Chapter 6: Object-Oriented Programming 233

The Object-Oriented Approach 234

Custom Classes 238

Custom Collection Classes 261

Summary 283

Exercises 285

 

Chapter 7: File Handling 287

Writing and Reading Binary Data 292

Writing and Parsing Text Files 305

Writing and Parsing XML Files 312

Random Access Binary Files 324

Summary 336

Exercises 337

 

Chapter 8: Advanced Programming Techniques 339

Further Procedural Programming 340

Further Object-Oriented Programming 363

Functional-Style Programming 395

Example: Valid.py 407

Summary 410

Exercises 411

 

Chapter 9: Debugging, Testing, and Profiling 413

Debugging 414

Unit Testing 425

Profiling 432

Summary 437

 

Chapter 10: Processes and Threading 439

Using the Multiprocessing Module 440

Using the Threading Module 444

Summary 454

Exercises 455

 

Chapter 11: Networking 457

Creating a TCP Client 458

Creating a TCP Server 464

Summary 471

Exercises 471

 

Chapter 12: Database Programming 475

DBM Databases 476

SQL Databases 480

Summary 487

Exercise 488

 

Chapter 13: Regular Expressions 489

Python’s Regular Expression Language 490

The Regular Expression Module 499

Summary 509

Exercises 510

 

Chapter 14: Introduction to Parsing 513

BNF Syntax and Parsing Terminology 514

Writing Handcrafted Parsers 519

Pythonic Parsing with PyParsing 534

Lex/Yacc-Style Parsing with PLY 553

Summary 566

Exercise 568

 

Chapter 15: Introduction to GUI Programming 569

Dialog-Style Programs 572

Main-Window-Style Programs 578

Summary 593

Exercises 593

 

Epilogue 595

Selected Bibliography 597

Index 599

Purchase Info

ISBN-10: 0-321-77050-1

ISBN-13: 978-0-321-77050-9

Format: eBook (Watermarked)?

This eBook includes the following formats, accessible from your Account page after purchase:

ePubEPUBThe open industry format known for its reflowable content and usability on supported mobile devices.

MOBIMOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

Adobe ReaderPDFThe popular standard, used most often with the free Adobe® Reader® software.

This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

Includes EPUB, MOBI, and PDF

$39.99

Add to Cart