我正在尝试从字典中实例化一个类。在类构造函数中,如果没有给出,我会为某些类成员分配默认值:
class Country(object):
def __init__(self, continent, country = "Zimbabwe"):
# do stuff
我正在实例化的 dict 具有与我的班级成员同名的键。我像这样从 dict 实例化:
country = Country(
continent = dictionary["continent"],
country = default_value if "country" not in dictionary else dictionary["country"]
)
可以看出,字典可能没有与类名对应的键。在这种情况下,如果键“国家”不存在,我想将班级成员国家保留为其默认值,即“津巴布韦”。有没有一种优雅的方式来做到这一点?某种方式:
country = dictionary["country"] if "country" in dictionary else pass
然而这是不可能的。我知道我可以将默认值字典作为 Country 类的静态成员,并像这样:
country = Country.default_values["country"] if "country" not in dictionary else dictionary["country"]
但这似乎是矫枉过正。有更好的办法吗?