About This Title

Pages: 140
Published: June 2021
ISBN: 9781680508239
In Print

Skill Level Meter

Intuitive Python

Productive Development for Projects that Last

by David Muller

Developers power their projects with Python because it emphasizes readability, ease of use, and access to a meticulously maintained set of packages and tools. The language itself continues to improve with every release: writing in Python is full of possibility. But to maintain a successful Python project, you need to know more than just the language. You need tooling and instincts to help you make the most out of what’s available to you. Use this book as your guide to help you hone your skills and sculpt a Python project that can stand the test of time.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $18.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Find indie bookstores in the U.S. Find indie bookstores around the world.


No matter your experience level or background, Python’s batteries-included standard library and rich third-party ecosystem provide a solid foundation to build your projects on. With the right intuition and background knowledge, you can take advantage of all the power Python offers. Take a guided tour of some of Python’s high points to craft a project that you can sustain and build on for a long time.

Run static analysis tools to detect and eliminate classes of bugs before you run code. Experiment with Python’s concurrency model and develop patterns for using Python’s thread and process abstractions to their full potential. Introduce yourself to Python’s type hinting system: mypy. Download and run third-party Python packages and do so safely without compromising on security. Debug code using Python’s built in debugger, and try procedures out in the interactive console. Run your code under new versions of the Python interpreter to unlock performance and usability improvements. All along the way, sharpen your Python instincts so you can keep your code clean and reduce the chance of bugs.

Mine Python for all you can by playing to its strengths and embracing patterns that harness its potential.

What You Need

The books assumes you have some experience programming in any language (not necessarily Python). To run the code presented in the book, you’ll need a Python environment which you can download from https://www.python.org/downloads/.

Resources

Releases:

  • P1.0 2021/05/31
  • B3.0 2021/05/13
  • B2.0 2021/04/27
  • B1.0 2021/03/22

Contents & Extracts

  • Preface
    • Who This Book Is For
    • What’s Inside
    • Using the Code in This Book
  • Diving into Life with Python
    • Setting Up Your Environment and Using This Book’s Companion Docker Image
    • Using Python’s Interactive Console to Run Programs
    • Try Out Different Versions of Python with Docker
    • Investigating with pdb Breakpoints
    • Detecting Problems Early
    • Formatting and Styling Your Code Consistently
    • Wrapping Up
  • Shifting Up with the Standard Library
    • Using the collections Module for Concise Code
    • Creating Temporary Workspaces with tempfile
    • Calling Other Programs with subprocess
    • Using Python’s Built-In Database with sqlite3
    • Profiling Python Code with cProfile
    • Wrapping Up
  • Ramping Up with Concurrent Code
    • Approach Concurrency with Caution
    • Meet Threads and Processes
    • Using concurrent.futures to Run Code Concurrently
    • Choosing ThreadPoolExecutor or ProcessPoolExecutor
    • Staying Safe When Writing Concurrent Code
    • Building with an Alternate Model: asyncio
    • Wrapping Up
  • Avoiding Traps
    • Serializing Python Objects with the pickle Module
    • Handling Datetimes with Timezones
    • Getting Caught with Sticky Default Arguments
    • Wrapping Up
  • Standing Guard When Python Breaks Free
    • Installing Third-Party Packages Securely with pip
    • Maintaining Privacy in a Public World
    • Keeping Your Source Organized
    • Dodging Wildcard Variable Shadowing
    • Wrapping Up

Author

David Muller is a professional software engineer. He’s not a stranger to other languages, but he gravitates to Python because of its low barrier to entry and focus on readability. David has been writing Python almost daily since he was introduced to the language in 2012 while studying bioinformatics at UC San Diego. He also authors Python tutorials for Digital Ocean’s public knowledge base.

eBook Formats:

  • PDF for desktop/tablets

  • epub for Apple Books, e-readers

  • mobi for Kindle readers

Get all eBook formats here for $18.95 (USD)

Add to Cart we accept visa, mastercard, amex, discover, paypal


Paperback Formats:

Please support indie bookstores!
Find indie bookstores in the U.S. Find indie bookstores around the world.

Related Titles:

Skill Level Meter

About This Title

Pages: 140
Published: June 2021
ISBN: 9781680508239
Edition: 1
In Print