我一直在阅读cpython HTTP包的源代码,以获取乐趣和收益,并注意到在server.py中,他们__all__设置了变量,但对函数也使用了下划线_quote_html(html)。
这不是多余的吗?两者都不能限制进口的商品from HTTP import *吗?
他们为什么两者都做?
除了使用 的“按惯例私有”功能外_leading_underscores,还有:
import编辑名称;nobody)。如果__all__未定义为仅涵盖类,则所有这些也将通过通配符添加到您的命名空间中from server import *。
是的,您可以只使用一种方法或另一种方法,但我认为前导下划线比排除__all__; 后者说“你可能不会经常需要这个”,前者说“除非你知道自己在做什么,否则不要出去”。他们都有自己的位置。
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |