【问题标题】:How to call a value of an object in a list by using string如何使用字符串调用列表中对象的值
【发布时间】:2019-04-26 10:37:40
【问题描述】:

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

列表为:circles #storing 40 circle objects

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

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

在代码中:

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

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

这样做的正确方法是什么?

【问题讨论】:

    标签: python string list variables


    【解决方案1】:

    使用特殊变量__dict__ 应该可以达到你想要的效果:

    dots[whichCircle].__dict__[whichDir] = whichSpeed
    

    【讨论】:

      【解决方案2】:

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

      list_name.index('dirnx')
      

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-22
        • 1970-01-01
        相关资源
        最近更新 更多