im a mechanical engineer , graduated in 2006 . Since university of always wanted to get into programming , but be warned , 99% of the learning material out there is geared toward people with computer science background.
Most book and courses will say "for absolute beginners" this absolute bullshit .
most books and courses do what a call a "syntax dump" teach you how to do simple commands but throw you under the bus when it comes to putting things together .
What most books fail to convey is computational thinking , i finished one course from penn state https://www.coursera.org/learn/computational-thinking-problem-solving
although it only get into python towards the end . I have found it to be very useful in re-calibrating my mindset to think computationally. It also helped out in other courses.
​
this this currently my path to learn python
python for everybody specialization on coursera ,Dr Chuck is the best when it comes to a gentle intro , and makes it really fun.
https://www.coursera.org/specializations/python
im currently doing another specialization
python 3 programming specialization
https://www.coursera.org/specializations/python-3-programming
Dr.Chuck also has other specializations (https://www.coursera.org/specializations/web-applications) .
for data science i also plan to take https://www.coursera.org/specializations/data-science-python.
Now here is the thing with coursera , you can sign up for coursera plus for around 400$ a year and get access to all the courses except for the degrees and masters tracks. this is the best bang for your buck.
​
FREE material , goto runestone academy and take
How to Think Like a Computer Scientist: Interactive Edition
https://runestone.academy/runestone/books/published/thinkcspy/index.html#
this is by far the best book
they also have a few dozen other books to do with python ,C++ etc.
​
Once you get the hang of python , integrating it with your field will be easy but this falls on you.