热线电话:13121318867

登录
2019-02-21 阅读量: 723
如何通过`from m import *`确定导入的内容?

我正在修改import语句,我需要确切地知道导入的成员是什么from m import *。文档似乎表明,当__all__不存在时,将导入所有不以下划线开头的成员。这在任何情况下都完全正确吗?我知道inspect.getmembers(),dir()和m.__dict__所有有略微不同的逻辑,所以我不能完全肯定它(如果有的话)将提供相同的列表作为import *。

解决办法:这可能是你整天都会看到的最讨厌的东西,但它可能会成功。

bound = globals().copy()

from module import *

for k, v in list( globals().items() ):

if k not in bound or bound[ k ] != v:

print( 'new', repr( k ), repr( v ) )

0.0000
5
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子