python property(不动产)方法

 1 class Test(object):
 2     @property
 3     def test(self):
 4         return 100
 5 
 6     @test.setter
 7     def test(self):
 8         return "修改"
 9 
10     @test.deleter
11     def test(self):
12         return "删除"
13 
14 
15 obj = Test().test
16 obj = 200
17 print(type(obj))
18 print(obj)
19 del obj
20 print(obj)
21 
22 # 结论:此方法的好处在于,调用类中的一个方法无需加括号(此时就无需考虑是否传参)
23 
24 
25 
26 # 思考:是否还有更简单的方式
27 
28 class Test(object):
29 
30     def geter_test(self):
31         return 100
32 
33     def setter_test(self):
34         return "修改"
35 
36     def delater_test(self):
37         return "删除"
38     num = property(geter_test,setter_test,delater_test,"描述")
39     # property(获取值方法,设置值函数,删除值函数,描述)     #酌情添加(获取,设置,删除)方法
40 
41 obj = Test().num
42 obj = 200
43 del obj
44 print(obj)
45 
46 # property 应用场景:
47 # 将处理过程封装在类方法内,暴露的是只是一个接口(类似属性),但是此类属性可以更改其获取,设置和删除的权限
48 # 电商网站,修改打折

猜你喜欢

转载自www.cnblogs.com/jum-bolg/p/11276139.html