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

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

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

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

关于编码,并不是一定要 UTF-8,而是要求“一致”,这点在 Windows 上使用 Python 2 尤其要注意。如果你需要读写系统文件,或者从命令行获取输入,可能设置为 Windows 默认的 GBK 反倒会更方便。

Python 3 的 print 方法是一个函数,需要加上括号进行调用,比如 print('Hello World') 。要注意的是,如果 print 后面是计算式,也要全部放在括号里,比如 print('%s加%s等于%s'%(param1,secondParam,res))。

range() 方法在 Python 3 里返回的不再是列表,而是一个 range 对象,相当于一个迭代器。但用在 for 循环遍历时写法没有区别。

Python 3 提供了一种功能更丰富的字符串格式化方法 .format() 。

Python 比较数值时可以链式比较,如 42 < res < 50 ,但如果要用 and 或者 or 的时候,必须写成 res == 42 or res == 50 ,不能省略成 res == 42 or 50 。

Python 的内置方法都是前后各两个下划线,不要错写成一个,那样就会被当做新的自定义方法而不被调用。

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