Python中的访问器和修改器方法
Python中的访问器和修改器方法用于访问类的私有数据,这些数据无法从类外部访问。在面向对象编程中,类对象的数剧被封装,即对象数据保持私有,无法从对象外部访问。可以使用Python中的访问器和修改器方法从对象外部访问这些私有数据。这些方法也称为Python中的getter和setter方法。在本文中,我们将通过示例了解访问器和修改器方法。
访问器方法
访问器方法用于访问对象数据。可以使用访问器方法访问对象的私有变量。访问器方法声明为公共方法,返回对象的私有成员数据。访问器方法也称为getter方法,因为它们用于获取对象数据。
在Python中,访问器方法使用@property装饰器定义。调用访问器方法时,它会返回对象的私有成员变量值。
示例
在下面的示例中,我们将定义一个名为Person的类,其中包含一个私有变量_name。然后,我们创建一个name访问器方法,该方法返回_name变量的值,它是Person类的私有成员变量。我们可以通过创建一个person对象并使用name访问器方法访问值来访问_name属性的值。
class Person: def __init__(self, name): self.__name = name @property def name(self): return self.__name person = Person("John") print(person.name)
输出
John
修改器方法
修改器方法用于修改对象的私有数据。修改器方法也称为setter方法,因为它们用于设置/修改对象私有变量的值。修改器方法声明为私有方法,修改对象变量的私有值。
在Python中,修改器方法使用@
示例
在下面的示例中,我们定义一个Person类,它具有一个私有_name变量。我们还分别使用@property和@name.setter装饰器定义一个name访问器方法和一个name修改器方法。name修改器方法在调用函数时传递值参数时修改_name变量的值。
class Person: def __init__(self, name): self.__name = name @property def name(self): return self.__name @name.setter def name(self, value): self.__name = value person = Person("John") person.name = "Jane" print(person.name)
输出
Jane
结论
访问器和修改器方法用于面向对象编程中,以提供对对象私有变量的访问。这些方法也称为getter和setter方法,因为它们分别用于获取和设置/修改对象的私有变量。Python中的访问器和修改器方法分别使用@property和@<variable_name>.setter装饰器定义。