首先,为什么python中没有end
?第二,有tabs
并且没有end
的事实使得python成为最好的可读/美丽的语言,为什么他们不在其他语言中引入这些特征?
答案 0 :(得分:4)
你必须向Guido van Rossum询问他为什么没有引入end
构造,因为它是一个语言设计问题 - 但正如你所说,有美学原因不这样做。
现有语言没有引入的原因是,已经有数十亿行代码写在其中,而你并不想强迫人们为了某些美学而改变所有这些。
为什么不将它作为向后兼容的更改,例如允许具有类似C语法的语言具有开头{
但不是结束}
?可能是因为那些语言的程序员非常习惯它并且可能实际上更喜欢它没有结束标记,并且可能不会将此视为有用的功能。此外,有必要使它成为一个文件的决定,因为显式和隐式块结尾的混合将非常混乱,并且可能无法解析。
事实上,Python本身就包含了一个关于此的笑话,我相信这反映了作者的观点。对此事的看法:
>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance
(__future__
是一个模块,您可以使用该模块导入在较新版本的Python中引入的某些功能,并已向后移植到旧版本。)