【发布时间】:2019-02-21 03:14:31
【问题描述】:
我正在对导入语句进行一些修补,我需要确切知道from m import * 导入了哪些成员。该文档似乎表明,当__all__ 不存在时,将导入所有不以下划线开头的成员。这在所有情况下都完全正确吗?我知道inspect.getmembers()、dir() 和m.__dict__ 的逻辑都略有不同,所以我不完全确定哪个(如果有)会提供与import * 相同的列表。
【问题讨论】:
-
docs.python.org/2/tutorial/modules.html#more-on-modules "这会导入除下划线 (_) 开头的名称以外的所有名称。请注意,通常不赞成从模块或包中导入 * 的做法,因为它通常会导致可读性差代码。但是,可以使用它来节省交互式会话中的输入。”
标签: python python-3.x import