Learn to code by solving problems : a Python programming primer - Zingaro, Daniel (No Starch Press, 2021)
Includes index.