Python命名空间的解释
我在找一个关于Python命名空间的好入门资料。我发现这个教程不错,但我相信还有更多的内容可以了解。
Python的官方文档里有相关信息,但读起来有点难。
请解释一下Python命名空间。在你的解释中,请包含完整的例子,展示它的各种用法。
2 个回答
4
这和Python中的命名有关。名字是和对象绑定在一起的,这样它们就可以被分离并赋给新的对象。所有没有名字的对象会被从内存中移除(详细信息可以查看这里)。在你的模块中可用的名字是以字典的形式实现的,可以通过__dict__
这个属性来显示。
你可以输入
>>> import time
>>> time.__dict__
结果会是一个字典,里面包含了在内置模块time
中定义对象时使用的名字。
8
其实这些内容并没有那么复杂。导入机制可能有点复杂,尤其是相对导入的时候,可能会更麻烦一些。不过,关于命名空间以及它们在代码中是怎么解析的,这个教程讲得挺全面的。
不过,语言参考文档通常是最权威的,但对于刚入门的人来说,可能有点过于详细了。
如果你对某些具体的内容有疑问,这里会有很好的回答。