Python for Programmers
Minimum price
Suggested price

Python for Programmers

Get up to speed - in a practical sense - with the Python programming language

About the Book

If you're a programmer, then learning a new language isn't difficult. It's just syntax at the end of the day, and so you're not overly concerned about 'how' to write code. You're more interested in just getting setup quickly and in the right direction.

Things like:

  • What's the best way to install and run applications?
  • How do dependencies and libraries work?
  • What does the important parts of the language API look like?
  • What's are the language idiosyncrasies?
    • For Loops
    • Generators
    • List Comprehensions
    • Magic Methods
    • Writing tests

Getting to this information quickly is what will make the difference to your success picking up the language and how fast you get up and running.

About the Author

Mark McDonnell
Mark McDonnell

Staff Software Engineer @BuzzFeed.

Formerly: @BBC @StormCreative.

Compassionate Listener. Polyglot. Author. Husband. Father. Jazz Guitarist. He/Him.

Table of Contents

  • Introduction
    • Background
    • Brief History of Python
    • The Pythonic Way
    • This Book
    • Prerequisites
  • Installation
    • Homebrew
    • Docker
    • Pyenv
    • Documentation
  • Vim Setup
    • Pylint
    • Flake8
    • Auto-Complete with Jedi
  • Modules
    • Importing Modules
    • Module used for CLI tooling
  • Packages
    • Local Package Development
    • Installing Private Packages from GitHub
    • Package Management
  • Data Structures
    • Lists
    • Dictionary
    • Tuple
    • Sets
    • Double-ended Queue
    • Bisection
  • Classes
    • Pylint
    • Attributes
    • Property Decorators
    • Polymorphic Access
    • Getters and Setters Discussion
  • Code Reuse Patterns
    • Inheritance
    • Composition
  • Magic Methods
    • __str__
    • __str__ vs __repr__
    • __class__
    • __name__
    • __getattribute__
    • __dict__
    • __call__
  • Loops
    • For/In
    • Zip
    • Enumerate
  • List Comprehensions
    • Ordering
    • Range
  • Generators
  • String Formatting
    • Positional access to arguments
    • Splatting arguments
    • Repeatable indexes
    • Named arguments
    • Keyword arguments
    • Complex object access
    • Alignment and Padding
    • Separators
    • Percentages
  • Decorators
    • Memoization
  • Concurrency
    • Tasks and the Event Loop
    • Hello World Concurrency
    • Chained/Coupled Function Calls
    • Futures
    • Multiple Tasks
    • Wait vs Gather
    • uvloop
  • Parallelism
    • Subprocesses
    • Deco: simplified subprocesses
    • Asyncio (again)
  • Threads
    • Threads vs Coroutines vs Futures vs Subprocesses
  • Logging
    • Log Levels
    • Configuration
    • File Logging
    • Multiple Modules
    • Different modules require different configuration
    • Timestamps
  • Tornado Web Server
    • Example
    • Documentation
  • Testing
    • Example test files
    • Understanding our example tests
    • Running our tests
    • setUp/tearDown
    • The many faces of Mock
    • Pytest
  • Debugging
    • Poor Man Debugging
    • IPython
    • PDB
  • Scope
    • Global
  • Context Managers
    • With
    • Creating your own Context Manager
    • contextlib
  • Conclusion

Other books by this author

The Leanpub 60-day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $12 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub