首页 > 解决方案 > 如何从变量的名称获取它在python中的属性

问题描述

我想使用字符串“_height”访问其属性中定义的 Player 类中 _height 的值,如果可能的话,不进行字符串操作。

class Player:
    def __init__(self, height):
        self._height = SyncVar(height)

    @property
    def height(self):
        return self._height.v

class SyncVar(object):
    def __init__(self, v):
        self.v = v

 p = Player(5)
 var_name = '_height'
 print 'The value of _height is %s' + str(p.__dict__[var_name])
 # Wanted: The value of _height is 5
 # What happens: The value of _height is <Main.SyncVar object at 0x0000000002DF8198>

标签: python-2.7properties

解决方案


推荐阅读