检查 statistics
模块时,Python 将 collections
模块列为其子模块之一:
>>> import statistics
>>> 'collections' in dir(statistics)
True
此外,collections
子模块实际上是标准的 Python collections
模块:
>>> import collections
>>> collections == statistics.collections
True
为什么会出现这种行为?
最佳答案
它没有任何子模块。 集合
已导入。导入模块会将对其的引用添加到全局命名空间。来自 statistics
module source :
import collections
模块也是对象,存储在 sys.modules
结构中,模块全局中的名称只是对这些对象的引用。因此,不仅 collections == stats.collections
为 true,collections is sys.modules['collections']
也为 true。
关于python - 为什么Python 3统计模块有collections模块作为子模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34031717/