我们如何在Python中获得可选的类属性?

Use*_*007 4 python

对于字典,我们可以使用.get方法.类的属性怎么样并提供默认值?

jas*_*son 10

你可以使用hasattrgetattr.

例如:

hasattr(foo, 'bar')
Run Code Online (Sandbox Code Playgroud)

将返回True如果foo有一个名为的属性bar,否则False

getattr(foo, 'bar', 'quux')
Run Code Online (Sandbox Code Playgroud)

foo.bar如果存在则会返回,否则默认为quux.

  • +1。您可能想提及 EAFP 和 `try:` / ` except AttributeError:` (2认同)