如何理解Python中包的引入
Python的from import *和from import *,它们的功能都是将包引入使用,但是它们是怎么执行的以及为什么使用这种语法呢?从一模块导入全部功能from import * means意味着“我希望能访问中我有权限访问的全部名称”。__all__是一个字符串列表,指定了当from import *被使用时,模块中的哪些符号会被导出。再说一次,编程惯例上下划线表示一个符号是私有的,不导入是合理的。让我们来看看在something.py中定义我们自己的__all__会发生什么。现在,我们期望from something import *只会导入_private_variable和PublicClass:包是怎样的呢?所以当我们使用from import *.时__all__说明了所有需要被导入当前命名空间的模块。明确比含糊要好。from import * 是不明确的。
用户评论