例如:
我有一个包含CLASS类的模块A, 我也有模块B在其方法中使用类CLASS作为参数 我有模块C什么使用模块B.所以我应该导入A.CLASS来实现它 可以将CLASS作为参数传递给模块B中的方法。但是如果我将模块A放入 到另一个包D.E.F ...我会得到一个非常长的导入字符串
在模块B中为CLASS制作别名的最佳方法是什么,使用B.someMethod(B.CLASS)和模块 C对模块A一无所知。
现在我在模块B中导入A.Class,然后在模块C中使用import B.CLASS
。#File:a.py
class Klass(object):
pass
。#File b.py
from a import Klass
def somemethod(foo):
pass
。#File c.py
from b import somemethod
from b import Klass
somemethod(Klass.field)
答案 0 :(得分:0)
我假设您正在尝试描述这种情况,我在这里看不到任何问题:
我有一个包含CLASS类的模块A
# File: a.py
class Klass(object):
pass
我有模块B在其方法
中使用CLASS类作为参数
# File b.py
from a import Klass
def somemethod(foo):
pass
somemethod(Klass)
我有模块C什么使用模块B.所以我应该导入A.CLASS以使CLASS作为参数传递给模块B的方法。
# File c.py
from b import somemethod
from a import Klass
somemethod(Klass)
现在我在模块B中导入A.Class,然后在模块C中使用import B.CLASS
只需在A.Class
中导入B
,因为B.Class
与A.Class
相同