0

是否可以在 python 中从同一类中的其他类变量中寻址类变量?

我的问题是:我正在尝试准备一些静态代码,如下所示:

class MyBaseObject:
  SIGNAL_NAME_1 = "signal-name-1"
  SIGNAL_NAME_2 = "signal-name-2"

  ALL_SIGNALS = {
    SIGNAL_NAME_1: ( signal-definition ),
    SIGNAL_NAME_2: ( signal-definition ) }

我对上述问题的看法是,根据 pythonSIGNAL_NAME_1并且_2在创建 dict 时没有定义。访问它们MyBaseObject.SIGNAL_NAME_1也不起作用(未知对象)。

所以问题是 - 是否有可能在 python 中让类变量相互引用?

谢谢!

4

1 回答 1

1

不,仅使用名称来引用其他类变量应该没有任何问题。MyBaseObject但是,在类定义完成之前,您不能将其称为未定义。

您发布的代码可以正常工作(如果signaldefinition已定义),因此如果您收到有关未定义名称的投诉,这意味着您没有发布您使用的确切代码。尝试发布准确的代码和准确且完整的错误消息。

于 2012-04-22T11:57:54.427 回答