Python,Django,从类内部使用Import,可以';我好像没弄明白
我想在一个类中使用导入,然后由另一个类继承,这样我就不必在每个文件中手动定义导入。我正在尝试这样做,但它不起作用,请提供任何建议:Python,Django,从类内部使用Import,可以';我好像没弄明白,python,django,class,import,Python,Django,Class,Import,我想在一个类中使用导入,然后由另一个类继承,这样我就不必在每个文件中手动定义导入。我正在尝试这样做,但它不起作用,请提供任何建议: class Djangoimports (): def __init__(self): from django.template import Context print Context class Init1 (Djangoimports): def __init__(self): Djangoi
class Djangoimports ():
def __init__(self):
from django.template import Context
print Context
class Init1 (Djangoimports):
def __init__(self):
Djangoimports.__init__(self)
self.c = Context(self.constructor_dict) # just example of trying to use the imported "Context"
>>>>> global name 'Context' is not defined
我尝试过尝试使用“self”的各种变体,但不知道如何适当地将其与导入from一起使用,因为它与我通常使用“self”的类属性/方法不同这对我来说很好 但你最好这样做:
>>> class Test(object):
... from functools import partial
...
>>> Test().partial
<type 'functools.partial'>
无论哪种方式,您现在都可以在该类上的其他方法中访问
bar
,或者以self.bar的形式访问派生方法。这对我来说很好
但你最好这样做:
>>> class Test(object):
... from functools import partial
...
>>> Test().partial
<type 'functools.partial'>
无论哪种方式,您现在都可以在该类的其他方法中访问bar
,或者在Python中作为self.bar访问派生方法,导入只会添加到当前名称空间。从函数返回后,名称空间将丢失,但可以保留将其附加到“self”的指针
你可以做:
class Djangoimports ():
def __init__(self):
from django.template import Context
self.Context = Context
class Init1 (Djangoimports):
def __init__(self):
Djangoimports.__init__(self)
self.c = self.Context(self.constructor_dict)
在Python中,导入只会添加到当前名称空间。从函数返回后,名称空间将丢失,但可以保留将其附加到“self”的指针
你可以做:
class Djangoimports ():
def __init__(self):
from django.template import Context
self.Context = Context
class Init1 (Djangoimports):
def __init__(self):
Djangoimports.__init__(self)
self.c = self.Context(self.constructor_dict)
谢谢,我想我明白你的意思了,我不确定在继承importer类的类中如何使用它though@Rick. 您可以作为self.bar
访问它,因为它成为类名称空间的一部分。。。谢谢你在这方面的帮助谢谢,我想我明白你的意思了,我不确定在继承导入器类的类中如何使用它though@Rick. 您可以作为self.bar
访问它,因为它成为类名称空间的一部分。。。谢谢你在这方面的帮助