我想从另一个类传递CONSTANT作为动态变量。
class A:
MATCH_ALL = 0
MATCH_ANY = 1
MATCH_NON = 3
def setMatchType(matchType):
assert(type in [MATCH_ALL, MATCH_ANY, MATCH_NON])
print type
在另一个档案中
import A
class B:
def makeAchoice():
instanceA = A()
instanceA.setMatchType(instanceA.MATCH_ANY)
但是,我想在makeAchoice上添加一个变量,因此setMatchType值可以是动态的。
import A
class B:
def makeAchoice(matchType=MATCH_ANY):
instanceA = A()
instanceA.setMatchType(?)
如何将常量传递给变量?以上?
我试着用 getattr(instanceA,matchType) 所以我可以先访问常量,但似乎无效。
答案 0 :(得分:2)
您只需使用A.CONSTANT_NAME
import A
class B:
def makeAchoice(matchType=A.MATCH_ANY):
instanceA = A()
instanceA.setMatchType(A.MATCH_ANY)