【问题标题】:Why there is no end in Python? [closed]为什么 Python 没有尽头? [关闭]
【发布时间】:2015-06-24 02:57:14
【问题描述】:

首先,为什么python中没有end?其次,有tabs而没有end这一事实使python成为最好的可读/美丽的语言,为什么他们没有在其他语言中引入这些特性?

【问题讨论】:

  • 仅供参考,这并不真正属于 Stack Overflow,因此您可能会得到一堆反对票。在 Stack Exchange 上的某个地方,这将是一个很好的问题,所以如果你想知道这个问题的答案,请到别处寻找。

标签: python


【解决方案1】:

您必须询问 Guido van Rossum 为什么他不引入 end 构造,因为这是一个语言设计问题 - 但正如您所说,不这样做是出于审美原因。

没有将其引入现有语言的原因是已经有数十亿行代码用它们编写,您不希望仅仅为了某些美学而强迫人们改变所有这些。

为什么不将其作为向后兼容的更改,例如允许具有类 C 语法的语言具有开头 { 而不是结尾 }?可能是因为那些语言的程序员非常习惯它并且可能实际上更喜欢它而不是没有结束标记,并且可能不认为这是一个有用的功能。此外,有必要对每个文件做出决定,因为显式和隐式块结尾的混合会非常混乱,并且可能无法解析。

事实上,Python 本身就包含了一个笑话,我相信这反映了作者对此事的看法:

>>> from __future__ import braces
  File "<stdin>", line 1
SyntaxError: not a chance

__future__ 是一个模块,您可以使用它来导入在较新版本的 Python 中引入并已向后移植到旧版本的某些功能。)

【讨论】:

  • 作为问题第一部分的附加内容; Van Rossum 研究 ABC 编程语言,该语言具有通过缩进嵌套的语句。 In a interview with Bill Venners,他说:“我制作了自己喜欢的各种 ABC 部分的版本。我创建了一个基本语法,使用缩进来进行语句分组,而不是花括号或开始结束块,......”。在与Lex Fridman 的另一次采访中,他提到为了高效工作,他想删除必须正确处理的细节。
猜你喜欢
  • 2013-06-21
  • 1970-01-01
  • 2021-01-01
  • 1970-01-01
  • 2014-03-13
  • 2015-12-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多