如何在Python中引用另一个类变量来初始化一个类变量?

时间:2018-10-14 23:18:00

标签: python

我想初始化两个类变量:第一个是常量,第二个是基于第一个常量的值构建的列表(或集合,字典等)。我想做的一个例子,没用:

class ThisDoesntWork:
   SOME_CONST = "hello"
   SOME_OTHER_CONST = list(SOME_CONST + str(i) for i in range(4))

结果:

NameError: name 'SOME_CONST' is not defined

在另一个答案中,只要没有列表,字典,集合,以下代码即可工作:

class ThisWorks:
   SOME_CONST = "hello"
   SOME_OTHER_CONST = SOME_CONST + str(1)

感觉好像我在类和名称空间的工作方式上缺少一些核心概念,这破坏了第一个示例,但没有破坏第二个示例。这是什么,什么是做好这项工作的好方法?

0 个答案:

没有答案