【发布时间】:2021-01-11 18:06:26
【问题描述】:
假设我有一个要导入一些包的文件:
# myfile.py
import os
import re
import pathlib
def func(x, y):
print(x, y)
如果我进入另一个文件并输入
from myfile import *
不仅导入func,还导入os、re和pathlib,
但我不希望在我执行import * 时导入这些模块。
为什么要导入我正在导入的其他包,您如何避免这种情况?
【问题讨论】:
-
恭喜,您找到了不使用
import *的众多理由之一。停止使用它! -
这能回答你的问题吗? Can someone explain __all__ in Python?
-
Why is it importing the other packages I'm importing and how do you avoid this?如果你的包中的所有东西(因此import *)在没有这些库的情况下也能正常工作,你为什么要导入它们? -
如果不需要导入,那么为什么它们会在您要导入的模块中?如果你想从你的模块中导入依赖这些的东西,为什么你不想导入那些依赖的模块?
标签: python import python-import