如何根据python中的字符串获取类属性

use*_*478 0 python string attributes class

我在python中有一个类,我想根据这样的字符串得到几个属性中的一个:

class my_class:
    def __init__(self):
        self.att1=1
        self.att2=2
        self.att3=3

    def getatt (self, number):
        return self.att(number)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

ice*_*ime 5

def getatt(self, number):
    return getattr(self, 'att%d' % number)
Run Code Online (Sandbox Code Playgroud)

或者使用新样式格式:

def getatt(self, number):
    return getattr(self, 'att{}'.format(number))
Run Code Online (Sandbox Code Playgroud)

另请注意,如果您有许多这些属性,则应考虑存储列表并从索引中检索元素.