python获取实例变量的最佳实践

ste*_*tla 1 python

我想知道如何访问python类中的实例变量.我应该为每个实例变量创建一个方法,还是应该直接访问它们?

这是一个例子:

class Example(object):

    def __init__(self):
        self.x = 5

    def getX(self):
        return self.x

    def addYtoX(self, y):
        return self.x + y # OR: return self.getX() + y
Run Code Online (Sandbox Code Playgroud)

谢谢!

Mar*_*ers 7

大多数情况下,只需直接访问它们.蟒蛇不是 Java的.

class Example(object):
    def __init__(self):
        self.x = 5

    def addYtoX(self, y):
        return self.x + y
Run Code Online (Sandbox Code Playgroud)

在Java中,您必须使用getter和setter,因为您无法改变主意并在以后将公共字段更改为getter和setter.在python中,你可以,所以在你真正需要之前不要使用getter和setter.然后你切换到一个property.