请说明一下python的私有属性和公用属性的区别和用法
时间: 2024-06-12 18:04:02 浏览: 123
Python中的私有属性和公用属性的区别和用法如下:
1. 私有属性:在属性名前面加上双下划线“__”即可定义为私有属性,私有属性只能在类的内部访问,外部无法直接访问。但是可以通过类的方法来访问和修改私有属性。
例如:
```
class Person:
def __init__(self, name, age):
self.__name = name
self.__age = age
def get_name(self):
return self.__name
def set_age(self, age):
self.__age = age
p = Person("Tom", 20)
print(p.get_name()) # 输出:Tom
p.set_age(21)
```
2. 公用属性:在属性名前面不加下划线即可定义为公用属性,公用属性可以在类的内部和外部访问和修改。
例如:
```
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def get_name(self):
return self.name
def set_age(self, age):
self.age = age
p = Person("Tom", 20)
print(p.name) # 输出:Tom
p.age = 21
```
总的来说,私有属性和公用属性的主要区别是访问权限的不同。私有属性只能在类的内部访问,而公用属性可以在类的内部和外部访问。在定义属性时,需要根据实际的需求来选择使用私有属性还是公用属性。
阅读全文