Photo by Gonard Fluit on Unsplash

Last time, I recommended Effective Python, an advanced book called Effective Python, to readers who asked what they should read after finishing the introductory book.

By Brett Slatkin, senior engineer at Google, Python, C++, and Java are the three application programming languages running neck and neck at Google. The author of this book combines years of hands-on experience and covers python3. x and python2. x. The book covers strings, functions, classes and inheritance, metaclasses, built-in modules, and concurrency. A collection of 59 best practices to help readers master Pythonic programming and write robust and efficient code that takes full advantage of the Python language.

It’s not a beginner’s guide, it’s not conceptual, it doesn’t explain what a decorator is, what an iterator is, what a metaclass is, etc., it’s more of a hands-on experience that tells you what solutions are appropriate for what scenarios. For example, many people say that Python is a bad place to use multithreading because of GIL problems. The author will not directly with you, but through practical cases to illustrate the real application of multithreading scenarios. The reader can start at any point without much connection between the chapters.





The book is a great reference manual for developers with some Python background, and is a modest 200 pages long. As an advanced book, you deserve one. It was originally a good Python advanced book, but for some reason it didn’t receive as much praise as its predecessor, Effective Java.

Buy at http://t.cn/RoAHAZx

Benefit hours:

When I recommend books, I usually read them first, and then decide whether to recommend them or not based on the quality of the book. The goal is to recommend only good books. This time, we have four Effective Python books, thanks to the Mechanical Industry Publishing Book.

The rule this time is different from last time, I will choose 4 people from the selected comments, each one will give a book, as long as the serious comments will have a chance. If you have a better way to play, let me know.

In addition, as long as the number of articles read exceeds 3000, each additional 1000 will be sent to the reader, the number of reading and the number of messages is modulo, the value corresponds to the corresponding floor readers (floor according to the order of message time), if it is 0 or there is a repetition, a random selection.

The more chance you have of retweeting your moments with your fingers. Deadline: 18:00, July 28

talk is cheap, show me the code

read_count = ...

comment_count = ...



def lottery():

   winners = set()

   global read_count

   while read_count >= 4000:

       m = read_count % comment_count

       if m in winners or m == 0:

           winners.add(random.randint(1, comment_count))

       else:

           winners.add(m)

       read_count -= 1000

   return winnersCopy the code

This code can run up to you, forward go ~ ~



Long press to focus on Zen Python