After some hesitation, I finally decided to start with learning Python. I had some hesitations because I am used to R and that is a different kind of cookie. The decision was made easier because I am working on a project with models developed by other colleagues in Python (and Matlab). Furthermore, although Shiny in R is a great way for visualization of results, I got stuck building a combination of results and information. Python offers Dash (some nice examples can be found in the Dash Galley). Another reason is that nowadays you can use Python in your Gams programs, which is great if you have to work on the input data.
I looked for some good books and courses on Python. I tried the DataCamp courses, which are quite good, but I tend to forget the stuff and although they do a good job, the details are often left out. Finally, I decided to use the following two books with great reviews on Amazon:
The first book I really like is a classic: Learning Python by Mark Lutz. It is well written, contains lots of interesting background information that helps me understand the nuts and bolts from Python. If you read a chapter every week, you will be a good Python programmer in less than a year.
Python for Data Analysis
The second book I recommend (and was often recommended by colleagues) is the book by Wes McKinney. It gives you a more or less quick introduction in the world of Numpy, Panda (Wes McKinney brought Pandas to Python), Matplot, and many other tools for Data Science. Although it is not as thorough as the book by Mark Lutz, it gets you started with most of the stuff.
Happy reading and coding!