获取对象属性的最干净/最快的方法是什么?

时间:2012-02-28 22:14:17

标签: python

如果对象存在,我想获取对象的属性,否则将其设置为None或空字符串或某些默认值。有这么快的一线方式吗?

例如在伪代码中:

gender = if Person then Person.gender else ''

2 个答案:

答案 0 :(得分:8)

您可以将default参数用于getattr()

gender = getattr(Person, "gender", "")

如果gender对象具有此类属性,则会将Person.gender设置为Person,否则设置为""

答案 1 :(得分:2)

假设Person有一个False值,如果它不存在:

gender = Person.gender if Person else ''