空白在Python中是重要的。事实上行首的空白是重要的。它称为缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。所以是强制的。
大学毕业后,范罗苏姆加入 CWI,这是一所主要做数学与计算机方面学术研究的机构。这段工作经历对他非常重要,他的编程理念,包括对 Python 的设计思想都是在这里初步形成的。(推荐学习:Python视频教程)
关于范罗苏姆,今天说说他的采访。
问:为什么你在设计 Python 语言的时候采用了强制缩进的方式来划分程序域?
如果你是个 C 或 Java 程序员,习惯了用大括号来划分程序域 —— 其实大部分语言都是这么做的 —— 看到 Python 是用缩进来搞定这件事,你马上会觉得「这太逆天了」,我当年学了 Perl,Java 之后再使用 Python,就是这种感觉。
范罗苏姆是这么说的:这种强制缩进,并不是什么新概念。当年我在 CWI 使用 ABC 语言编程的时候,人家就这么干的。我从 ABC 语言中继承了这个概念。不过 occam 这种很古老的语言也是用了这种方式,我不知道他们是谁先采用的,也许都是独创。这种思想也可能出自 Don Knuth(高德纳,著名计算机科学家,经典巨著《计算机程序设计艺术》的作者),他早在 1974 年就提出过这种做法。
范罗苏姆的想法是,如果「常识」上确立的东西,没有必要过度纠结。当然,这种常识是他的常识,至于其他人,大家应该会习惯的。并且,范罗苏姆很喜欢 ABC 的特性,他觉得这种设计彻底终结了 C 或 Java 程序员关于大括号直接放在函数名后面还是再换一行的终极争论。另外,他觉得这样的代码更具可读性。严格的格式化会形成更整洁的代码,而且会减少不同程序员的代码「布局」区别,何乐而不为呢?
于是 Python 就一直把这种代码风格延续下来,并成为了自己的鲜明特点。
问:如果想熟练使用 Python 编程,你有什么建议吗?
范罗苏姆说:实用主义。如果你过分纠缠数据封装,访问控制、抽象或规范这样的理论概念,你就不是一个真正的 Python 程序员。而且,你会浪费时间在「与语言为敌」上面。什么是与语言为敌,就是你是用 Python 的时候,还试图延续 Java 的使用习惯。你应该去享受它,使用它的特性。如果你信奉即时满足,喜欢极限编程和敏捷开发,那 Python 就是你的最爱。
我们 Python 工程师还有一句最常用的话,英文是「Life is short, you need Python」,中文就是我常说的,人生苦短,我用 Python。
更多Python相关技术文章,请访问Python教程栏目进行学习!
Atas ialah kandungan terperinci python缩进是强制的吗. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!