有没有办法在类中定义没有任何默认值的变量?



我想要以下行为:

class RealEstate:
rooms

突然出现了一个未解决的引用错误:NameError: name 'rooms' is not defined.

我知道我可以将None赋值给变量:

class RealEstate:
rooms = None
或者定义类型:
class RealEstate:
rooms: float

都可以。但这不是我想要的。我希望它越简单越好,打字越少越好。有没有办法使第一个例子有效?也许是一些神奇的元类,一些出色的装饰器,扩展了一些特殊的类或库来提供帮助?

不,你不能"define"通过只写变量名来获取变量。它将被计算为一个表达式,如果它不存在,它将引发一个NameError

  • "define"通过使用赋值name = value(它在运行时将一个名称绑定到一个值,您需要指定该值)或

    来指定一个变量。
  • "define"通过使用类型注释name: type来创建一个变量(它将名称与类型关联起来,您需要为其指定类型,但不会在运行时自动创建名称或任何值)。

相关内容

最新更新