如何使用字符串在列表中调用对象的值

时间:2019-04-26 10:37:41

标签: python string list variables

我要调用存储在列表中的对象的值:

列表为:circles #storing 40 circle objects

对象是:一个在x和y中存储值#direction的圆

现在我想调用circles[0].dirnx,但是dirnx是一个名为whichDir的字符串

在代码中:

whichCircle = 0
whichSpeed = 1
whichDir = 'dirnx' # dirnx = direction in x
dots[whichCircle].whichDir = whichSpeed

当然,python创建dots[whichCircle].whichDir并存储whichSpeed 但我想存储在dots[whichCircle].dirnx

执行此操作的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

使用特殊变量__dict__应该可以实现您想要的:

dots[whichCircle].__dict__[whichDir] = whichSpeed

答案 1 :(得分:0)

如果要在列表中查找具有特定值的项目,可以执行以下操作:

list_name.index('dirnx')

这将返回列表中位置的索引。