The following books are Open Educational Resources (OER), available for free to be used, shared, and even remixed.
Python for Everybody was remixed from Think Python, which focuses more on general programming.
Learn about programming concepts like iteration and classes, using Python. Used by introductory classes at Mason. Originally called "How to Think Like a Computer Scientist".
How to Think Like a Computer Scientist, on which Think Python was itself based,
was remixed into Learn Python the Right Way which focuses more on on practice.