pythonのクラスで、異なるインスタンス変数に対する似たようなメソッドを簡略化できますか


以下のように異なるインスタンス変数に対して、ほとんど同じ機能を持ったメソッドを定義したいときに、コードをより簡略に書く方法はありますでしょうか？

より具体的には、`add_x()`,`add_y()`,`add_z()`を同一名のメソッド`add()`としたいです。

回答お願いいたします。

[code]

    class test:
        def __init__(self):
            self.x = 1
            self.y = 2
            self.z = 3
    
        def add_x(self):
            self.x += 1
    
        def add_y(self):
            self.y += 1
    
        def add_z(self):
            self.z += 1
    
[/code]




以下の様に書いてはみましたが、attribute を直接操作する(`t.x += 1` など)のと同じではありますね。

[code]

    from numbers import Number
    
    class test:
        def __init__(self):
            self.x = 1
            self.y = 2
            self.z = 3
    
        def add(self, attr):
            if attr in vars(self):
                v = getattr(self, attr)
                if isinstance(v, Number):
                    setattr(self, attr, v + 1)
    
        def __str__(self):
            return ', '.join(f'{a}: {v}' for a, v in vars(self).items())
    
    if __name__ == '__main__':
        t = test()
        print(t)
    
        t.add('x'), t.add('y'), t.add('z')
        print(t)
    
    # 実行結果
    x: 1, y: 2, z: 3
    x: 2, y: 3, z: 4
    
[/code]

