我需要获取一个列表:[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"]
来完成这项工作,但我不确定这是否是最推荐的方式。
有谁知道是否有其他方法可以完成这项工作?谢谢!
答案 0 :(得分:4)
使用getattr()
[getattr(A, attr).name for attr in ["sample", "species", "factor", "cell", "population"]