Great free resources from Al Sweigart at https://inventwithpython.com/.
Al writes, “Learn to Program. For Free. Learning to program makes you a smarter and more capable human being. Computers are not only the most common tool we encounter in our day-to-day lives, but also the most powerful. Even if your plans don’t include becoming a software engineer writing code for the next Mars mission, you can find value in learning to code. Rocket science uses programming, but programming isn’t rocket science. Whether you’re preparing for a software career, an office worker with a folder full of spreadsheet files, or a hobbyist interested in making indie video games, the Python programming language is a great way to get started in the world of programming.
I’m Al Sweigart, and I write books to teach beginners to code. I put them online for free, because programming is too valuable and needs to be accessible to all. (Though I sell print and ebooks to pay rent.) Get started. It’s a great journey.”