我正在定义一个 python 类,并希望声明一组类属性,然后使用这些属性初始化一个列表,该列表也将存储为类属性。
class SampleClass( models.Model ):
#----------------------------------------------------------------------
# Class attributes
#----------------------------------------------------------------------
# field names
FIELD_NAME_ID = "ID"
FIELD_NAME_USER = "User"
# Field name list
FIELD_NAME_LIST = []
FIELD_NAME_LIST.append( SampleClass.FIELD_NAME_ID ) # = "ID"
FIELD_NAME_LIST.append( SampleClass.FIELD_NAME_USER ) # = "User"
# rest of class definition
# ...
#-- END class SampleClass --#
这在 Java 中类似于定义类变量,然后使用它们来初始化其他随后定义的类变量。
在这个例子中,我尝试使用类名来引用它们,例如:SampleClass.FIELD_NAME_ID
这不起作用(它破坏了类定义)。
添加这样的列表项:
FIELD_NAME_LIST.append( "ID" ) # = "ID"
工作正常。
在 python 中初始化另一个类属性时,有没有办法使用一个类属性?