在一个文件中导入一个库并在另一个文件中使用它,而不导入
Importing a library in one file and using it in another file, without importing
有一个名为 transforms.py 的文件,其中导入了 torchvision.transforms
并定义了一些自定义转换。在另一个名为 main.py 的文件中,导入了 transforms.py。
现在,为了在 main.py 中使用 torchvision.transforms.Normalize
而无需导入它,它会起作用吗(Normalize
未在 transforms.py,只导入)?如果有效,背后的原因是什么?
transforms.py:
from torchvision.transforms import *
...
Custom transformations defined
...
main.py
from data import transforms
...
normalize = transforms.Normalize(mean=[0.5,0.5,0.5],std=[0.1,0.1,0.1])
...
是的,应该可以。原因是 import
将您正在导入的任何内容添加到当前文件的命名空间,这与您 def
ine 函数时发生的情况完全相同,在
from module import a_function
和
def a_function:
两者都以 a_function
定义结束。无论哪种方式,您都可以 import
该文件并使用 that_file_name.a_function()
访问 a_function
有一个名为 transforms.py 的文件,其中导入了 torchvision.transforms
并定义了一些自定义转换。在另一个名为 main.py 的文件中,导入了 transforms.py。
现在,为了在 main.py 中使用 torchvision.transforms.Normalize
而无需导入它,它会起作用吗(Normalize
未在 transforms.py,只导入)?如果有效,背后的原因是什么?
transforms.py:
from torchvision.transforms import *
...
Custom transformations defined
...
main.py
from data import transforms
...
normalize = transforms.Normalize(mean=[0.5,0.5,0.5],std=[0.1,0.1,0.1])
...
是的,应该可以。原因是 import
将您正在导入的任何内容添加到当前文件的命名空间,这与您 def
ine 函数时发生的情况完全相同,在
from module import a_function
和
def a_function:
两者都以 a_function
定义结束。无论哪种方式,您都可以 import
该文件并使用 that_file_name.a_function()
a_function