I recently read http://python-guide-pt-br.readthedocs.io/en/latest/ . I would definitely recommend it if you already know the basics about programming and python. It has an electronic version as well!
Then I would first recommend http://shop.oreilly.com/product/0636920028659.do and using websites such as codingame.com to make the learning experience a bit more fun.
Why not stick to the documentation once you get the hang of the language's basics and until than, kick start your learning with something like TutorialsPoint website.
I've found learnpythonthehardway.org to be good, although it is a bit of a step-by-step approach and not a reference. When you're done, you'll have a pretty good foundation in python, but it'll take some time.
One of the best ways to learn a language is to get a good reference guide (the online docs are great) and start working on the problem you're trying to solve. Many commonly encountered problems are addressed on stackoverflow.com, so with python just jumping in with two feet is fairly doable, especially if you have a language already under your belt.
I found "Python Crash Course" by Eric Matthes (no starch press) to be a good quick introduction to the pythonic way of doing things. It gave me "just enough python" to complete a project I was working on without requiring a huge time investment.
as a beginner you can download sololearn app on your phone and start. thier course will put you on the way. after that I think you can start by some books to improve your skills
I read this book "Python Crash Course ", by Eric Matthes. and I found it very informative and easy to follow by beginners. I have good knowledge in other programming languages so I don't need to start from the beginning. to sum up, if you new to Python, but not new to programming go for this excellent book. p.s I suggest you use Pycharm as an IDE.
Kindly find the attached link. In that link you will find many free courses related to Python, you can opt course whichever suits to your requirements.