There are a huge range of tutorials and books available for learning Python. There are a couple things to watch out for when selecting learning material:
- Python 2 & 3 are very similar but subtly different languages. This can be a bit of a pain point when first learning Python so be aware of what version a tutorial or book is demonstrating. I highly recommend sticking to Python 3 as Python 2 is slowly being phased out of existence.
- Python is a very general purpose language (e.g. compared to R) so a lot of material is focused on web development, games and etc. The style of code used can be different between these topics so try to find learning material from an appropriate domain.
Bellow is a list of resources that are generally more focussed towards science and numerical programming rather than other topics (e.g. web development). I have used parts of most of these or otherwise trust the source of the material.