(by Dan Bader, ISBN: 9781775093312 (electronic))

1 Introduction

1.1 What’s a Python Trick?

Python Trick: A short Python code snippet meant as a teaching tool. A Python Trick either teaches an aspect of Python with a simple illustration, or it serves as a motivating example, enabling you to dig deeper and develop an intuitive understanding.

1.2 What This Book Will Do for You

1.3 How to Read This Book

1.4 Free Bonus: The Python Tricks Digital Toolkit

You can access your copy of the digital toolkit online on my website at http://dbader.org/python-tricks-toolkit.

2 Patterns for Cleaner Python

2.1 Covering Your A-- With Assertions

2.2 Complacent Comma Placement

2.3 Context Managers and the with Statement

2.4 Underscores, Dunders, and More

2.5 A Shocking Truth About String Formatting

2.6 The Zen of Python Easter Egg

3 Effective Functions

3.1 Python’s Functions Are First-Class

3.2 Lambdas Are Single-Expression Functions

3.3 The Power of Decorators

3.4 Fun With *args and **kwargs

3.5 Function Argument Unpacking

3.6 Nothing to Return Here

4 Classes & OOP

4.1 Object Comparisons: is vs ==

4.2 String Conversion (Every Class Needs a __repr__)

4.3 Defining Your Own Exception Classes

4.4 Cloning Objects for Fun and Profit

4.5 Abstract Base Classes Keep Inheritance in Check

4.6 What Namedtuples Are Good For

4.7 Class vs Instance Variable Pitfalls

4.8 Instance, Class, and Static Methods Demystified

5 Common Data Structures in Python

5.1 Dictionaries, Maps, and Hashtables

5.2 Array Data Structures

5.3 Records, Structs, and Data Transfer Objects

5.4 Sets and Multisets

5.5 Stacks (LIFOs)

5.6 Queues (FIFOs)

5.7 Priority Queues

6 Looping & Iteration

6.1 Writing Pythonic Loops

6.2 Comprehending Comprehensions

6.3 List Slicing Tricks and the Sushi Operator

6.4 Beautiful Iterators

6.5 Generators Are Simplified Iterators

6.6 Generator Expressions

6.7 Iterator Chains

7 Dictionary Tricks

7.1 Dictionary Default Values

7.2 Sorting Dictionaries for Fun and Profit

7.3 Emulating Switch/Case Statements With Dicts

7.4 The Craziest Dict Expression in the West

7.5 So Many Ways to Merge Dictionaries

7.6 Dictionary Pretty-Printing

8 Pythonic Productivity Techniques

8.1 Exploring Python Modules and Objects

8.2 Isolating Project Dependencies With Virtualenv

8.3 Peeking Behind the Bytecode Curtain

9 Closing Thoughts

9.1 Free Weekly Tips for Python Developers

9.2 PythonistaCafe: A Community for Python Developers

Tags: reading   books   python  

Last modified 30 May 2021