Python全系列 教程
3567个小节阅读:5929k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
@property
装饰器@property
可以将一个方法的调用方式变成“属性调用”。
@property
主要用于帮助我们处理属性的读操作、写操作。对于某一个属性,我们可以直接通过:
emp1.salary = 30000
如上的操作读操作、写操作。但是,这种做法不安全。比如,我需要限制薪水必须为1-10000
的数字。这时候,我们就需要通过使用装饰器@property
来处理。
xxxxxxxxxx
#测试@property
class Employee:
def __init__(self,name,salary):
self.name = name
self.__salary = salary
@property #相当于salary属性的getter方法
def salary(self):
print("月薪为{0},年薪为{1}".format(self.__salary,(12*self.__salary)))
return self.__salary;
@salary.setter
def salary(self,salary): #相当于salary属性的setter方法
if(0<salary<1000000):
self.__salary = salary
else:
print("薪水录入错误!只能在0-1000000之间")
emp1 = Employee("高淇",100)
print(emp1.salary)
emp1.salary = -200
运行结果:
xxxxxxxxxx
月薪为100,年薪为1200
100
月薪为100,年薪为1200
100
薪水录入错误!只能在0-1000000之间