在以下两个陈述中:
import base64
from base64 import *
因为两者都会导入完整的库但是我们需要为第一种情况编写base64.b64encode()
(从base64库调用b64encode()函数)并在第二种情况下使用相同的函数,我们得到一个
NameError: name 'base64' is not defined
。
对于第二种情况,b64encode()
用于调用函数。
如果他们完全导入了库,那么会导致这种差异。
注意:base64库仅用作示例。 编辑:我希望能解释为什么会发生这种情况而不是更好用。
答案 0 :(得分:0)
import module
导入模块/包,因此可以通过module
获取。
如果你使用from module import *
,那么>> 模块/包中的所有内容都将被导入到(让我们称之为)全局命名空间。因此module
本身不会导入。
在询问(下一个)问题时,请考虑一些基础研究,这个问题已经被回答了几十万次。