Learn Python the Hard way is a free html tutorial series by Zed Shaw. It's a very practical guide to learning Python for those with no programming background.
You can do it on most any computer. It works on Windows, Mac OSX, and Linux with instructions for all three in the first exercise.
Ranked in these QuestionsQuestion Ranking
Teaches by giving a piece of code and letting the user see what the code does.
Available online for free.
Pro Encourages use of flash cards
To help better remember certain parts of the language, the author suggests using flash cards.
Con Author still suggests newcomers to the language learn Python 2
The only reason to learn Python 2 these days is if you have to workout on legacy Python 2 software, and upgrading to Python 3 is not an option. Telling newcomers to learn a outdated, and soon to be unsupported version of the language is detrimental.
Con Suggests looking up details on the web
The book often suggests looking up details on the web instead of providing them. Additionally, no resources are suggested where to look up such information. As a result the quality of explanation of details can vary based on used resource.