Python:如何重命名公共变量?

qzlgjiam  于 2023-02-11  发布在  Python
关注(0)|答案(1)|浏览(121)

想象一下有这样一门课:

class Foo:
    def __init__(self):
        self.nr = 0

假设Foo被广泛使用,一些脚本和用户使用变量Foo.nr来读取和写入它的值。
现在假设开发人员希望将.nr的名称更改为.val

class Foo:
    def __init__(self):
        self.val = 0

为了不强迫用户更新他们的代码,是否可以通过编写.nr来让他们访问.val

f1 = Foo()
print(f1.nr)

我提出了属性、getter和setter方法,但我看不出它们会有什么帮助。

6ojccjat

6ojccjat1#

class Foo:
    def __init__(self):
        self.val = 0

    @property
    def nr(self):
        return self.val

    @nr.setter
    def nr(self, value):
        self.val = value
        
f1 = Foo()
print(f1.nr)

将给予预期的0

相关问题