Goodreads helps you keep track of books you want to read.
Start by marking “Effective Python: 59 Specific Ways to Write Better Python” as Want to Read:
Effective Python: 59 Specific Ways to Write Better Python
Enlarge cover
Rate this book
Clear rating
Open Preview

Effective Python: 59 Specific Ways to Write Better Python

(Effective Software Development)

4.25  ·  Rating details ·  561 ratings  ·  48 reviews
Each item in Slatkin s "Effective Python" teaches a self-contained lesson with its own source code. This makes the book random-access: Items are easy to browse and study in whatever order the reader needs. I will be recommending "Effective Python" to students as an admirably compact source of mainstream advice on a very broad range of topics for the intermediate Python pro ...more
Paperback, 227 pages
Published March 8th 2015 by Addison-Wesley Professional (first published February 1st 2015)
More Details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Effective Python, please sign up.

Be the first to ask a question about Effective Python

Community Reviews

Showing 1-30
Rating details
Sort: Default
Pavel Karateev
Sep 14, 2015 rated it it was amazing
Shelves: dev, python
Nice short book full of Python tips and tricks. There're 59 subchapters, each one is independent. Topics vary from OOP to concurrency and parallelism.

Not intend for beginners, but a nice and easy home reading for an experience Python developer.

- Concise
- Best practises
- Relevant topics

- Too short
- Not realy an indepth material
- Some topics are too easy and well known (virtualenv, unittest)
Jul 09, 2017 rated it it was amazing
I've been doing Python sporadically for the last couple of years, but have mostly stuck to the shallow end. Recently, I've been trying to make some dodgy Python code a bit less dodgy and suspected that I wasn't using Python in the right way. So I picked up this book, and I really wish I'd read it sooner!

Effective Python belongs to the "Effective Software Development" series, which was conceived by Scott Meyers, author of Effective C++, to provide guides on best practices for a variety of languag
Eric Casteleijn
Mar 10, 2015 rated it really liked it
There is a surprising amount of meat to this book, considering how thin it is. I would recommend this book to Python developers of all experience levels, but note that if you are a beginner, some of the later chapters might be a little out of reach. Similarly to more experienced developers, nothing in the first two chapters should come as big news, except maybe where you disagree with some of the finer points ;).

On the whole I think it's one of those books I will reach for from time to time, for
Anton Antonov
Apr 09, 2018 rated it really liked it
A must-have when working with Python 2/3 codebases.

Although dated by now, it's still relevant except for "Concurrency and Parallelism", if you're writing Python 3.

With the newest improvements in Python 3 regarding asyncio and futures, there needs to be a revisited version of the book.

Either way, highly recommended one-two times read.

Along with "The Python 3 Standard Library by Example (Developer's Library)" the book compliment each other to an extent, however they both fall short at "concurrency
Mar 19, 2015 rated it it was amazing
If you browse Amazon’s catalog for Python books, you end up with several pages of titles that introduce you to the language, those that get you from hello world up to classes and a little taste of the standard library. What a struggle for those that already know what a closure is to find something worth reading! Brett’s book is one of those that experienced developers hope to see showing up as on top of the results instead: a title that covers those lesser used features that teach you to write b ...more
Feb 03, 2017 rated it liked it
Shelves: technical
A good, but not perfect, text for the next level of Python programming. Unlike the Effective C++ books this is clearly based on (and which I loved), I found the book relatively slow going and the examples- particularly the trickier ones - a bit contrived. I am an experienced programmer who's new to Python and this wasn't a good fit.
Ulas Tuerkmen
Oct 03, 2018 rated it really liked it
For a long time, there was a big gap in the intermediate to advanced Python book space. There was Tarek Ziade's Expert Python Programming,a really good book that started aging as Python moved on. There were books on individual topics such as network programming or web development, but these were limited in scope and could not be recommended to people looking to advance their general knowledge of the language. Fortunately, this situation has now drastically improved, thanks to a number of new pub ...more
Feb 03, 2018 rated it it was amazing
I've observed a curious inverse relationship between the length of computer books and their quality. As with program code shorter is usually better. The canonical examples remain the original C Programming book and the first LaTeX Manual. Both of these terse masterpieces put the blundering, bloated, tree killing, screen-shot-ware that pollutes our bookshelves to shame. Hence, when picking software books I first count pages: anything above two hundred pages is suspicious. Effective Python weighs ...more
Isaac Lockett
Sep 30, 2018 rated it liked it
Some really good advice in here, but the learning curve is strange. It seems to start with very simplistic ideas, and then steps up quite suddenly to ways to do better decorators. It then later on explains decorators but I didn't come away with a clearer idea of what they were, but I highly doubt that many people will have a full understanding of decorators prior to the book, but don't for example know how to add a __repr__() method to a class.

Also it spends way too long on APIs, which made the
Yehia Abo el-nga
Mar 08, 2018 rated it it was amazing
A 200 pages summary of best practices of Python coding in production. I like the format of the book. The author mentions 59 different practices, highlights the problems with and proposes a better approach. He doesn't just put the "best practice" out there. He takes the reader through a thought process of why that might be bad through illustration by example. I find it extremely helpful for people writing Python for anything production-level.
Mar 02, 2018 rated it really liked it
This is a decent python book. Covers quite a few Python features and how to use them well. I enjoyed it and, after some practice, feel better-able to express myself elegantly in Python.

Where the book falls short is in having enough examples and and practice problems problems to know why/when to apply some of the more advanced Python features. Also, this seems to be target at Python 3.4/2.7, missing some newer Python 3 features.
Tony Poerio
Jan 30, 2018 rated it it was amazing
Really good Python book. It's not as in-depth as something like Fluent Python, but it has a ton of helpful tips, presented in an easily digestible format.

If you're reading only *one* Python book, go with Fluent Python. But Slatkin's book is a great addition to any library.

I'd call this a true intermediate-level book on the language.
Sep 21, 2018 rated it liked it
I usually prefer books that give a conceptual overview versus those that are lists of specific tips, however this book seemed to accomplish both! It is a valuable intermediate resource that immediately provides ways to structure a new project, clean up an old one, or understand deeper aspects to how python works.
Jul 04, 2017 rated it liked it
This book is a good overview of some tricks using Python 2 & 3. The author's examples, however, are typically not at all intuitive. I would recommend interested readers looking for another more intuitive book if she/he is interested in advancing their Python skill. For beginners, this is not a beginner friendly book any way, so I wouldn't bother.
Burke Fitzpatrick
Jun 27, 2018 rated it it was amazing
Shelves: python
This is a great book. I read it once to see what it was about, but I'm going to have to reread it a few times to get the most out of it. I found several useful things on the first read though. Great info on the GIL in chapter 5.
Aug 16, 2018 rated it it was amazing  ·  review of another edition
Nice and usefull book. Easy to read.

It suits for developers with different experience level in Python. I like most of all the way to show the differences between Python 2 and Python 3.
Poruri Sai
Jun 20, 2017 rated it really liked it
Short and concise, this book introduced a lot of new and interesting things about the Python language. It gave me a better understanding of certain concepts of the language and definitely made me a better programmer. There's a lot in this book a junior developer can learn from.
Nov 08, 2018 rated it liked it  ·  review of another edition
Szczerze powiedziawszy taka średnia, niby są dobre metody na lepszy kod, ale jakieś to takie sobie. Lepsza jest receptury Python.
Erwin Rossen
Oct 14, 2017 rated it really liked it
Good snack book to catch up with and improve your Python skill. I especially liked that the author is explaining everything with minimalist but complete examples to illustrate his points.
Dec 13, 2018 rated it really liked it
Pretty good. Nice advises and nicely explained but it felt like is missing something.
R. Dominic Aspel
Jun 13, 2018 rated it did not like it  ·  review of another edition
Waste of time

This was a waste of money on the Kindle. Don’t even bother, move on.
None of the code downloads with the book. Just skip this crap.
May 14, 2017 rated it it was amazing  ·  review of another edition
This is my fastest read ever, most of the tips are good and concise. You don't have to read through all the details but at least you know where to look for when needed.
Valery Lavrentiev
Sep 28, 2018 rated it it was amazing
Concrete examples that can be used in your code straightaway.
Dmitry Demidov
Mar 14, 2018 rated it really liked it
Отличный справочник по Python для программистов любого уровня. Обязательное чтение перед собеседованиями. Да и просто неплохо бы хотя бы раз в год перечитывать.

Summary -
Dec 27, 2017 rated it really liked it
I liked the book for what it's telling. so many thing to consider when coding and helps you write much cleaner code. but, code examples are a bit hard to understand.
Jun 02, 2016 rated it liked it
Shelves: coding, python
This review has been hidden because it contains spoilers. To view it, click here.
Vlad Bezden
Mar 17, 2017 rated it it was amazing  ·  review of another edition
Great book, very good tips. It also organized in a right way. Great explanations and examples. Enjoyed reading it.
Dec 26, 2014 rated it it was amazing
Most Python developers are familiar with the widespread mantra that "[t]here should be one-- and preferably only one --obvious way to do it.” In Python itself, it is often the case that there is one obvious and well-established One Way To Do It™. But as a community – and even as organizations and teams – we frequently fail to make use of customary One Way™ approaches. We contribute code in a variety of styles, and to varying degrees of re-inventing Python's included wheels.

This is hardly a fault
Nathan Glenn
Feb 09, 2017 rated it it was amazing
Like all of the Effective Programming series, this does not disappoint. I started at 0 with Python and read through this in a few days. Each point can be read standalone and tells you how to do something, a best practice, some interesting syntax, etc.
Thomaz Philippe
Apr 29, 2015 rated it it was ok
This book is not as good as the ones of the same series for other languages like Effective Java and Effective Javascript. There are several good tips indeed, and I would recommend some python newcomers to give it a try. In the end, the book is well written, but it lacks some really good tips in the pythonic way of doing things. In the end my rating is biased by the comparison with the other books I mentioned.
« previous 1 3 4 5 6 7 8 9 next »
There are no discussion topics on this book yet. Be the first to start one »
  • Fluent Python: Clear, Concise, and Effective Programming
  • Building Machine Learning Systems with Python
  • Automate the Boring Stuff with Python: Practical Programming for Total Beginners
  • Flask Web Development: Developing Web Applications with Python
  • Test-Driven Web Development with Python
  • Becoming a Better Programmer
  • jQuery Cookbook: Solutions & Examples for jQuery Developers
  • Bash Cookbook: Solutions and Examples for Bash Users
  • Python for Data Analysis
  • Think Python
  • Bayesian Reasoning and Machine Learning
  • The Principles of Object-Oriented JavaScript
  • The Node Beginner Book
  • Docker: Up & Running: Shipping Reliable Containers in Production
  • Programming JavaScript Applications: Robust Web Architecture With Node, HTML5, and Modern JS Libraries
  • Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
  • RESTful Web APIs
  • Problem Solving with Algorithms and Data Structures Using Python

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Other books in the series

Effective Software Development (1 - 10 of 12 books)
  • Effective Debugging: 66 Specific Ways to Debug Software and Systems
  • Effective Ruby: 48 Specific Ways to Write Better Ruby
  • Effective Objective-C 2.0: 52 Specific Ways to Improve Your IOS and OS X Programs
  • Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript
  • Effective Perl Programming
  • Effective C#: 50 Specific Ways to Improve Your C#
  • More Effective C#: 50 Specific Ways to Improve Your C#
  • Code Quality: The Open Source Perspective
  • Code Reading: Open Source Perspective
  • Effective Enterprise Java
“To initiate the debugger, all you have to do is import the pdb built-in module and run its set_trace function. You’ll often see this done in a single line so programmers can comment it out with a single # character.” 0 likes
More quotes…