@ property和财产函数怎么在python项目中使用

  介绍

今天就跟大家聊聊有关@ property和财产函数怎么在python项目中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

<强> 1,基本的@ property使用,可以把函数当做属性用

class 人(对象):   ,@ property   def 才能get_name(自我):   ,,,print(& # 39;我叫xxx # 39;)   def  main ():   时间=person 才能;人()   person.get_name才能   if  __name__ ==, & # 39; __main__ # 39;:   以前,,main ()

运行结果:

我叫xxx

<强> 2,@ property的集合,删除人,得到

class 商品(对象):   ,@ property   def 才能;价格(自我):   ,,,print (& # 39; @ property # 39;)   ,@price.setter   def 才能;价格(自我价值):   ,,,print (& # 39; @price.setter: & # 39; + str(值))   ,@price.deleter   def 才能;价格(自我):   ,,,print () & # 39; @price.deleter& # 39;   时间=obj 货物()   obj.price =50   obj.price   del  obj.price

运行结果:

@price.setter: 50
@ property
@price.deleter

<强> 3,@ property演示

class 商品(对象):   def 才能__init__(自我):   ,,,#原价   ,,,self.original_price =100   ,,,#折扣   ,,,self.discount  0.8=,   ,@ property   def 才能;价格(自我):   ,,,#实际价格=原价*折扣   ,,,new_price =self.original_price * self.discount   ,,,return  new_price   ,@price.setter   def 才能;价格(自我价值):   ,,,self.original_price =价值   ,@price.deleter   def 才能;价格(自我):   ,,,del  self.original_price   时间=obj 货物()   obj.price   obj.price =200   del  obj。以前价格

<强> 4,财产函数使用

class  Foo(对象):   def 才能get_name(自我):   ,,,print (& # 39; get_name& # 39;)   ,,,return  & # 39;老王# 39;   def 才能;set_name(自我,,值):   ,,,& # 39;& # 39;& # 39;必须两个参数& # 39;& # 39;& # 39;   ,,,print (& # 39; set_name& # 39;)   ,,,return  & # 39; set 价值# 39;+,价值   def 才能del_name(自我):   ,,,print (& # 39; del_name& # 39;)   ,,,return  & # 39;老王# 39;   NAME 才能=,财产(set_name, get_name,还以为,del_name, & # 39;描述# 39;公司)   时间=obj  Foo ()   obj.NAME , #调用得到的方法   时间=obj.NAME  & # 39;亚历克斯# 39;,,#调组用方法   时间=desc  Foo.NAME.__doc__ ,, #调用第四个描述   打印(desc)   del  obj.NAME , #调用第三个删除方法

运行结果:

get_name
set_name
描述。
del_name

<强> 5,财产函数操作私有属性的获取和设置方法

class 人(对象):   def 才能__init__(自我,,年龄):   ,,,self.__age =,年龄   def 才能;set_age(自我,,值):   ,,,self.__age =价值   def 才能get_age(自我):   ,,,return  self.__age   AGE 才能=,财产(get_age, set_age)   时间=person 人(15)   person.AGE =20   打印(str (person.AGE)

运行结果:

20

@ property和财产函数怎么在python项目中使用