不得不说,Python仍然是当下最热门的编程语言。相比较其他不少主流编程语言,Python有更好的可读性,上手相对容易,非常适合初学编程者。
自学的三大要素:专业、系统、坚持。只要用心做好这三点,那么学习Python肯定没问题。
下面给大家带来一份Python学习全教程。
1.书籍篇

2.网站篇
用Python编写代码一点都不难,事实上它一直被赞誉为最容易学的编程语言。如果你准备学习web开发, Python是一个不错的开始,甚至想做游戏的话,用Python来开发游戏的资源也有很多。这是快速学习这门语言的途径之一。
许多程序员都把Python作为编程之旅的开始,然后是像PHP和Ruby这样的语言。它也是最热门的Web开发语言之一,并极力推荐学习。但是,Python应该怎么学呢?应该从哪里开始?
我来为你解决这个问题,因为我自己学习编程和开始做开发的时候也依靠了很多这里的资源。当然这仅仅是一个友好的建议,最好的方法还是通过实践去学习,这里推荐的一些书和资源只是为了指引你走往正确的方向。
刚开始学习的时候可能会特别令人沮丧,一旦你学完了基础,之后的东西对你来说就很自然了,你都不需要思考就知道要怎么做。
一、The Python Challenge

如果你的编程生涯中从没做过这样的挑战,这可能会有点难度。但是配和上面介绍的那本书的话也不是很难,你应该尝试一下。它有33个关卡(谜题),你可以用Python编程技巧解决。
几百万的人都在试着解决这个,即使你不能完成所有的关卡,你也会将学到很多新的东西,尤其是批判性思维和发散思维。你的大脑会过热,但这是在编程!
二、Learn Python Programming @ Codecademy

你可能看到许多“大牛”程序员骂这个网站,但那并不重要。我们想要做的是看看或者测试一门编程语言的基本语法是怎么执行的,以及调用函数时做了些什么,除了简单地输出‘Hello World!’。
在这个Codecademy的课程中你将会学到如何使用文件和循环,什么是函数以及他们能用来做什么。这些都是非常基础的,但是对初学者来说都是很好的东西。当需要帮助时有一个用来交流的论坛,但所有的东西都应该在你理解的范围之内。
你不需要安装任何工具,如果你想在你自己的电脑上重写一遍代码以便更好地理解它,你可能唯一需要的就是一个Notepad++编辑器。我就是这样做的,并且我向所有想学习编程的人都推荐Codecademy,不管是Python还是其他的语言。
三、Intro to Computer Science @ Udacity

Udacity提供了一个很棒的免费课程,引你进入Python编程和学习关于搜索引擎的许多东西,以及如何编写你自己的小型网络爬虫。它的确是一个值得参与的课程,并且还提供了额外的指导和社区支持。
你可以报名成为付费学生得到导师的指导,并且可以在课程结束得到一个证书,或者你可以自己使用免费的课件学习,遗憾的是付费课堂的容量有限,所以你申请后需要加入名单等待。
它总共有11个课程,每一个都有讲解非常深入的文档。去它的官方主页查看更多的信息或者你想问的问题的答案。
四 、Google’s Python Class

Google它本身就被一大堆Python代码驱动着,只有他们提供社区支持并且愿意帮助其他人学习这门语言才更有意义。这是我曾经最喜欢看的指南和课程之一。它真的很详细,而且视频适合初学者,观看起来也很有趣。
去看几分钟它的第一堂课,看看你是否喜欢那个老师,然后决定是否开始学习Python!官方主页有这些练习题和例题的所有链接。
五、A Byte of Python

非常像LPTHW(笨办法学Python),但是在如何制定完整的学习计划并实施,以及如何迈出第一步上提供了更深层次的引导,而不会让你丧失自信心。对于那些想学Python的人来说它被认为是最好的初学者教程之一,当然你要先看看前几章,是否喜欢它的写作风格。
六、Think Python

Think Python是一个面向Python初学者的手册。它从编程的基本概念教起,非常详细地定义了所有第一次会遇到的术语,并且很有逻辑地展现新的概念。像递归和面向对象这样大一点的知识板块被分成了一系列更小的步骤,穿插于课程几个章节。
在这个链接里你会发现有大量的示例代码。它是最为专业的书之一,它有一个很严肃的原则: “像计算机科学家一样思考”。它需要将近40美元才能买到,但是你可以下载免费的PDF和HTML版本。如果从头开始学Python的话,肯定会从它上面得到好处。
七、Python at Learnstreet

你可能会想有个网站提供如何在他们页面上添加HTML代码的课程,哈哈。严肃一点地说,Learnstreet提供了很棒的Python交互式学习教程,就像这篇文章所说的所有东西一样,它对初学者非常友好。如果你遇到了问题,最好用Google去搜索。
我最喜欢Learnstreet的一点是每个练习后面都有许多提示和解释,显示在你编写代码的同一个界面里。
八、The New Boston

如果你更喜欢使用视频学习,我不确定是否还有比The New Boston的Python系列视频教程更全面的了,许多其他的编程语言也可以在他们的YouTube频道里找到。
它唯一的缺点就是没有可以阅读或者下载的资料,你只能看视频。我是那种不能忍受一直盯着视频看的程序员,这可能与我选择Google的Python课程有关,但它们实在太有趣了。
九、Python @ Coursera

这个课程是为从来没接触过编程的人准备的。你只需要小学的数学水平就可以了:懂简单的数学方程和算术优先级,以及像f(x) = x + 5这样的函数。
它在十周内应该可以学完,每周大概花10小时来完成课后作业。如果你有时间来做这个,并且不会感到很累,我推荐你注册并完成这个课程,它会巩固你的知识,并可以结合上面介绍的任何一个资源来更好地理解 Python。
十、Pythonspot

Pythonspot是一个综合教程,划分了很多不同类别的知识板块,首先你将拥有初学者资源来帮你开始Python的学习,然后你继续保持前进你能学到更多关于使用Python开发web,创建图形界面,开发游戏的内容,到那时你可以准备学习一些更高级的板块,像网络等等。这些都在一个地方,非常容易使用。
十一、Python Practice Book

从根本上说,这是Anand Chitipothu在他讲授Python课程时使用的资源,但即便你不与Anand本人一起学习,你仍然可以利用这个资源来获取Python在不同角度的见解,以及看到不同开发者的观点。
十二、Python Tutor

我认为这是新手程序员近期能够上手的最好的项目之一,Python Tutor都是在教你当执行你写的代码时到底发生了些什么。清楚地了解到如何写一段程序,能够理解后台程序的每个命令都是截然不同的。你可以使用自己写的代码,也可以使用平台提供的代码。
十三、Real Python

虽然这是一个收费的资源,但最新的评论看起来还是相当不错的,所以不管怎样我决定加上这一条。在Real Python需要花费60美元来开始你的学习,将会有超过1300页的内容和10个多小时的视频供你访问,还包括以后可以免费更新。你能得到来自Real Python团队的导师的帮助,不过这需要额外的费用。以及博客里有适量与代码相关的教程能够给你帮助。
十四、Full Stack Python

你能比较熟练地使用Python了,但是你不知道接下来该走什么样的方向?这个网络课程就是为你解决这个问题的,通过给你一个真正的项目去做,帮助你理解怎样用你学到的Python知识建立一个web应用程序和网站。学会怎样积累一些真正的知识。
十五、Invent with Python

教你怎样使用Python创造一款你自己的电脑游戏。每章为你提供了一个新游戏完整的源代码,通过这些例子教你编程的概念。它在网站上可以免费阅读,或者在亚马逊购买。
十六、PythonLearn

你是一个对信息学感兴趣的家伙吗?整个网站的资源都围绕着确切的话题,所以如果你感兴趣的话,去看看可能会是一件好事。
十七、Dive Into Python3

迟早有一天,大多数的东西都会使用Python3来构建,尽管Python2仍然非常稳定并被大量使用,但Python3在过去的两年里确实发展的非常完整了。这本在线书籍所有的内容都在帮助你理解Python3是什么,以及如何最好地掌握它。
3.思维导图篇
学了这么多是不是觉得云里雾里,没有一个完整的体系。接下来就是要展示关于Python的学习路线了,不要眨眼~

此外,放一些关于Python的知识点思维导图。
条件循环

数据类型

模块

面向对象编程

列表元组

基础知识1

基础知识2

函数1

函数2

高清图片已打包,详见:
Python思维导图+学习路线图 wx7dcc75bb5e655e9b.h5.xiaoe-tech.com
4.实战篇
当你真真正正掌握了以上的资料,是时候迈出下一步,进入实战阶段!
【Python教程】深入浅出教你学Python wx7dcc75bb5e655e9b.h5.xiaoe-tech.com


来源:oschina
链接:https://my.oschina.net/u/4364008/blog/4839894