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.
im currently doing another specialization
python 3 programming specialization
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
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.