即使一个人,也要活得像军队一样!

Python-- property用法(实现了get,set,delete三种方法)

一、可以利用property对静态属性的进行修改操作,包括设置和删除属性
  1、调用静态属性===>在静态属性函数前先用@property;
  2、设置静态属性===>在静态属性函数前加上@静态属性函数名.setter,同时静态属性函数要加上value参数;
  3、删除静态属性===>在静态属性函数前加上@静态属性函数名.deleter。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#方法一
class Foo:
@property
def A(self):
print('获取(get)属性时执行===')

@A.setter
def A(self,value):
print('设置(set)属性时执行===')

@A.deleter
def A(self):
print('删除(del)属性时执行===')
f1 = Foo()
f1.A #'获取(get)属性时执行==='
f1.A = '1' #'设置(set)属性时执行==='
del f1.A #'删除(del)属性时执行==='

二、上述操作还可以用如下方式实现
  注意:静态属性 = property(get_静态属性,set_静态属性,del_静态属性),property中的参数位置一定要按照get set del的顺序。

1
2
3
4
5
6
7
8
9
10
11
12
13
class Foo:
def get_A(self):
print('获取(get)属性时执行===')
def set_A(self,value):
print('设置(set)属性时执行===')
def del_A(self):
print('删除(del)属性时执行===')
A = property(get_A,set_A,de_A)

f2 = Foo()
f2.A #'获取(get)属性时执行==='
f2.A = '2' #'设置(set)属性时执行==='
del f2.A #'删除(del)属性时执行==='

以上。
– end –

-------------本文结束感谢您的阅读-------------