网上有这样一张图片,信息量很大,通常会被配上标题“一张图让你学会Python”:

这张图流传甚广,但我没有找到明确的出处,图片上附带了 UliPad 的作者 Limodou 的信息,很有可能是原作者。如有知情者可留言告诉我。

其实,说看了这张图就能学会 Python 显然过于“标题党”,如果你有类似的速成想法也请尽早摒弃。但这张图的价值在于,用一段简单的代码,将 Python 的许多基础知识点都涵盖在了一起。如果你是个 Python 初学者,刚看了一些入门教程,对基础有一些了解之后,可以对照这张图回顾下相关的知识点,看看自己能不能讲出里面每一个标注的含义。

不过这张图是基于 Python 2 的(虽然影响也很小),所以我做了几个注释,也就是图上的几个数字,对内容做一点点补充说明:

  1. 关于编码,并不是一定要 UTF-8,而是要求“一致”,这点在 Windows 上使用 Python 2 尤其要注意。如果你需要读写系统文件,或者从命令行获取输入,可能设置为 Windows 默认的 GBK 反倒会更方便。
  2. Python 3 的 print 方法是一个函数,需要加上括号进行调用,比如 print('Hello World') 。要注意的是,如果 print 后面是计算式,也要全部放在括号里,比如 print('%s加%s等于%s'%(param1,secondParam,res))
  3. range() 方法在 Python 3 里返回的不再是列表,而是一个 range 对象,相当于一个迭代器。但用在 for 循环遍历时写法没有区别。
  4. Python 3 提供了一种功能更丰富的字符串格式化方法 .format()
  5. Python 比较数值时可以链式比较,如 42 < res < 50 ,但如果要用 and 或者 or 的时候,必须写成 res == 42 or res == 50 ,不能省略成 res == 42 or 50
  6. Python 的内置方法都是前后各两个下划线,不要错写成一个,那样就会被当做新的自定义方法而不被调用。

以上我加的这几点,都是以往很多初学者会遇到的坑,供参考。

除了上面这张图之外,还有一张很赞的图,是一张 Python 3 的知识点思维导图

这张图来自一个叫做 Python3 in one pic 的项目,项目中除了这张图,还有 IPython Notebook 版的演示程序,地址:

https://github.com/coodict/python3-in-one-pic

这张图就比较详细了,几乎涵盖了 Python 3 入门的方方面面。如果你对图上的每一条都清楚,那么在 Python 语法层面可以说是非常熟练了。

为了方便阅读,我把图切割并标注了一下:

完整图片请进入项目 Github 查看。(也可以公众号 Crossin的编程教室 里回复关键字

你可以把这张图打印出来,随时翻阅。但我还是多唠叨一句:这个只是语法的提纲,只看这个是没法写出程序的,要学会编程还是要靠不停地写代码。学了语法之后,跟着我们编程教室里的各种练习、案例一起写起来!

════

其他文章及回答:

如何自学Python | 新手引导 | 精选Python问答 | Python单词表 | 人工智能 | 爬虫 | 我用Python | requests | 计算机视觉 | 字符播放器

欢迎搜索及关注公众号:Crossin的编程教室

一图学Python的更多相关文章

  1. 他学习一年Python找不到工作,大佬都说你别再学Python了!

    引言: 都说,滴水穿石非一日之功.然而有些人即使奋斗一辈子也比不上别人一年,别人学习一年比不得你学习一个月.其中缘由,有些人看了大半辈子还没看明白. 即使Python这么火,为何你学习一年的Pytho ...

  2. 数百种编程语言,而我为什么要学 Python?

    是应用率最高.长期霸占排行榜的常青藤 Java?是易于上手,难以精通的 C?还是在游戏和工具领域仍占主流地位的 C++?亦或是占据 Windows 桌面应用程序半壁江山的 C#?…… 我想,每个人可能 ...

  3. 小白学 Python(3):基础数据类型(下)

    人生苦短,我选Python 引言 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 前面我们介绍过了数字,本篇我们接着聊另一个常用的基础数据类型:字符串. ...

  4. 小白学 Python(15):基础数据结构(集合)(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  5. 小白学 Python(24):Excel 基础操作(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  6. 小白学 Python 爬虫(16):urllib 实战之爬取妹子图

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  7. 小白学 Python 爬虫(17):Requests 基础使用

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  8. 小白学 Python 爬虫(18):Requests 进阶操作

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  9. 小白学 Python 爬虫(19):Xpath 基操

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

随机推荐

  1. jmeter压测tcp协议接口:java.net.SocketException: Software caused connection abort: socket write error

    tcp接口,试压过程中,部分请求报如下错误: java.net.SocketException: Software caused connection abort: socket write erro ...

  2. 常用环境变量配置(vim /etc/profile)

    安装,参考:https://www.cnblogs.com/uncleyong/category/1457906.html # jdk export JAVA_HOME=/usr/local/jdk1 ...

  3. 创新引领,再获嘉誉!Smartbi亮相亚太银行数博会,共话未来银行数字化趋势

    4月21日,以"加速数字化,引领银行业务创新"为主题的第六届亚太银行数字化创新博览会在上海盛大开幕.本次高峰论坛吸引了400多位来自学术界.咨询行业以及银行业等不同领域的行业大咖齐 ...

  4. 安装好的pycharm修改代码存储路径

    安装好pycharm的时候,第一次点开pycharm没有配置好,导致代码存放的路径是默认的.但是现在想把路径改成自己的路径怎么办? 首先,pycharm->file->settings-& ...

  5. 【C# 线程 】内存模型 与Volatile

    CPU硬件有它自己的内存模型,不同的编程语言也有它自己的内存模型. 在 C# 的语言规范中 ECMA-334,对于Volatile关键字的描述: 15.5.4 Volatile fieldsWhen ...

  6. 小白学python第2问: 为什么只有int,没有long?

    为什么只有int,没有long? 在python官网开发者指引里面能找到 PEP 237 -- Unifying Long Integers and Integers,这里说明了为什么要统一 int ...

  7. spring 中<ref parent="">标签是什么意思;ref标签与ref属性有什么不同;子容器如何引用父容器的bean

    spring的配置文件可能会有多个<property name="a" ref="b" />就是找当前配置文件里的bean 也就是id为b的 < ...

  8. layout_gravity和gravity

    layout_gravity是指控件本身的位置,gravity是指控件内元素的位置.

  9. Python第三讲

    今日内容概要 数据类型及内置方法 字符编码 文件处理 函数简介 今日内容详细 数据类型及内置方法 列表 name_list =['jason','oscar','tony','kevin'] 1.索引 ...

  10. 几行代码把Chrome搞崩溃之:HTML5 MP3录音由ScriptProcessorNode升级成AudioWorkletNode采坑记

    关键词: STATUS_ACCESS_VIOLATION AudioContext AudioWorkletNode audioWorklet addModule resume suspended c ...