为什么要在Python中为内置函数分配值?

为什么要在Python中为内置函数分配值?,第1张

为什么要在Python中为内置函数分配值?

Python希望您对您的代码负责,这就是为什么。Python没有私有属性,没有受保护的类,并且几乎没有关于可以使用的名称的限制。

是的,这意味着您可能会意外重命名内置文件。为代码创建单元测试,使用lint,通常,您将很快学会发现意外使用所需的内置组件。这与意外地在代码中重用其他名称没有什么不同。

请注意,您只是 掩盖
了内置名称。找不到全局下一个名称的查找将在内置名称空间中进行,因此,如果您设置

str
其他名称,则会在内置名称空间之前找到。只需删除全局:

>>> str = 'foobar'>>> isinstance('foobar', str)Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: isinstance() arg 2 must be a class, type, or tuple of classes and types>>> del str>>> isinstance('foobar', str)True

另一种选择是使每个内置名称成为保留关键字,从而使您可以使用的名称列表大大减少,并且在重新定义这些对象时没有灵活性。例如,Python
2.7有144个这样的名称。

在这种情况下,请参阅Guido van Rossum撰写的博客文章,内容为为什么

None
True
并且
False
现在是Python
3中的关键字:

因为您永远无法在任何Python程序中的任何地方将它们用作变量名或函数名,所以使用Python的每个人都必须了解该语言中的所有保留字,即使它们不需要它们。因此,我们尝试使保留字的列表保持较小,并且核心开发人员在向该语言添加新的保留字之前会费力工作。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4953247.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存