为什么我需要 "from tqdm import tqdm" 而不是 "import tqdm"?
Why do I need to "from tqdm import tqdm" instead of just "import tqdm"?
可能是一个简单的问题,但我才刚刚开始 Python 并尝试了解图书馆的工作原理。
所以我的问题是为什么我需要输入
from tqdm import tqdm
而不只是
import tqdm
与其他图书馆一样?
我知道当你只需要库的一部分时你可以这样做。但在这种情况下,如果我不这样做,我的程序就无法运行。第二个表达式不应该包含所有内容吗?
如果我 运行 我的程序用它我得到错误:
"TypeError: 'module' object is not callable"
from tqdm import tqdm
表示您正在 tqdm 下导入模块 tqdm。
import tqdm
表示导入整个包。在这种情况下,您必须使用 tqdm.tqdm()
,这等同于在上述情况下仅使用 tqdm()
。
第一个tqdm
是包或模块的名称。第二个 tqdm
是在 package/module 下定义的可调用对象。它可能是一个不同的可调用对象,例如 trange
:
from tqdm import trange
您基本上是在 tqdm 模块中导入可调用的 tqdm。
包 tqdm
中有一个名为 tqdm
的模块。现在你的 tqdm
你可以
- 导入包
tqdm
中的所有模块并使用名为 tqdm
的模块:
import tqdm
for i in tqdm.tqdm(range(10)):
pass
或
- 只需通过以下方式导入
tqdm
包的 tqdm
模块:
from tqdm import tqdm
for i in tqdm(range(10)):
pass
可能是一个简单的问题,但我才刚刚开始 Python 并尝试了解图书馆的工作原理。
所以我的问题是为什么我需要输入
from tqdm import tqdm
而不只是
import tqdm
与其他图书馆一样?
我知道当你只需要库的一部分时你可以这样做。但在这种情况下,如果我不这样做,我的程序就无法运行。第二个表达式不应该包含所有内容吗? 如果我 运行 我的程序用它我得到错误:
"TypeError: 'module' object is not callable"
from tqdm import tqdm
表示您正在 tqdm 下导入模块 tqdm。
import tqdm
表示导入整个包。在这种情况下,您必须使用 tqdm.tqdm()
,这等同于在上述情况下仅使用 tqdm()
。
第一个tqdm
是包或模块的名称。第二个 tqdm
是在 package/module 下定义的可调用对象。它可能是一个不同的可调用对象,例如 trange
:
from tqdm import trange
您基本上是在 tqdm 模块中导入可调用的 tqdm。
包 tqdm
中有一个名为 tqdm
的模块。现在你的 tqdm
你可以
- 导入包
tqdm
中的所有模块并使用名为tqdm
的模块:
import tqdm
for i in tqdm.tqdm(range(10)):
pass
或
- 只需通过以下方式导入
tqdm
包的tqdm
模块:
from tqdm import tqdm
for i in tqdm(range(10)):
pass