adzs552 发表于 2020-10-28 12:14:00

关于导入模块与__all__的问题

本帖最后由 adzs552 于 2020-10-28 12:15 编辑

我在网上查询,说是定义了变量__all__然后由别的地方导入就只能导入__all__内的,那么为什么我查看这个变量却发现两个不一样。。。如图。。,右边的为什么比左边的多这么多。。。并且在左边也没有找到像getcwd之类函数

冬雪雪冬 发表于 2020-10-28 13:46:19

上面有一行提示:
# Note:more names are added to __all__ later.

实际上在后面采用__all__.append, __all__.extend又往这个列表中增加了内容。

hrp 发表于 2020-10-28 13:54:17

本帖最后由 hrp 于 2020-10-28 13:55 编辑

1. 不是说定义了all就只能导入all中的内容,而是使用通配符导入时(from os import *)只会导入all中的内容,指名导入还是不受限制的。
2.all定义的时候只有这么多内容,不代表后面不会有对all进行添加内容的操作,你看注释都说了:后面会有更多内容添加进all,你搜索一下有多少__all__就知道了。
页: [1]
查看完整版本: 关于导入模块与__all__的问题