有没有更好的方法将多个字段作为Python中的列表?

时间:2012-11-16 03:22:59

标签: python list attributes

我需要获取一个列表:[A.sample.name, A.species.name, A.factor.name, A.cell.name, A.population.name]

但是,此列表非常长(大约20个元素),并且所有元素都来自相同的模式A.fieldname.name。我想我可以用[A.__dict__[i].name for i in ["sample", "species", "factor", "cell", "population"]来完成这项工作,但我不确定这是否是最推荐的方式。

有谁知道是否有其他方法可以完成这项工作?谢谢!

1 个答案:

答案 0 :(得分:4)

使用getattr()

[getattr(A, attr).name for attr in ["sample", "species", "factor", "cell", "population"]