A while ago, when I was still fairly new to Python, I stumbled upon the Dan Bader's "Real Python" newsletter. It was a very refreshing take on learning how to code. It gave a simple, yet insightful, tip each day. The approach and the substance were aimed at someone who is already familiar with the basics of Python and programming, but wanted to improve those skills in a non-formal and unsystematic way.
So after a while I decided to purchase Dan's "Python Tricks" book. The book is written with the same general approach as the newsletter, yet there are a few big differences. For one, the book is written in a very systematic way, and walks you through various aspects of Python. It is broken into eight major sections, each containing several short-ish subsections. The subsections are similar to the newsletter emails, but go into more detail and depth. Even though the book follows a certain thematic progression, it is possible to read subsections out of order, and jump to the ones that seem most interesting to you at the time. One of the things I like the most about Dan's approach to Python exposition is that he tries to teach you not only how to do something, but also the rationale and the best practices behind different approaches. In this book you'll learn the why behind the how.
Python is a fairly high-level language, and its very legible and easy-to-understand style certainly help its enormous popularity. However, there are instances when understanding how it does things on a lower level helps, and this book nicely covers many of those cases. It pops the hood and takes a look at the engine. These are not just intellectual exercises, but can help you become a better coder.
Regardless of your level of experience with Python (unless you are one of those 10x Ninja Rockstar Developers), this book will probably have something to teach you. Highly recommended.