To learn Python, you should probably start out by checking out the "Getting Started" page over at python.org https://www.python.org/about/gettingstarted/
As an experienced programmer and technologist, who knows nothing about Python, I wanted to find a good place to really learn the language quickly, in-depth, with a rigorous approach. My first thought was simply use the Classic "Dive Into Python" by Mark Pilgrim. However, I know that it's dated, and that Mark stepped away from that project a long time ago. So, what should I use to learn Python? Here are some answers to the question. As I use them, I'll add comments about the experience.
Of course Reddit has already answered this question and built a complete wiki on learning python... so that a great starting point too.
http://www.diveintopython3.net/ - the updated classic
http://www.codecademy.com/en/tracks/python - pretty good backers. Free online education
MIT has a course in it's OpenCourseWare site called introduction to programming using Python
Course Description This course will provide a gentle, yet intense, introduction to programming using Python for highly motivated students with little or no prior experience in programming. The course will focus on planning and organizing programs, as well as the grammar of the Python programming language.
The course is designed to help prepare students for 6.01 Introduction to EECS I. 6.01 assumes some knowledge of Python upon entering; the course material for 6.189 has been specially designed to make sure that concepts important to 6.01 are covered.
This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month.