python面向对象编程中类方法和静态方法是怎样的
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章给大家分享的是有关python面向对象编程中类方法和静态方法是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。今天学习pyt
千家信息网最后更新 2026年11月02日python面向对象编程中类方法和静态方法是怎样的
本篇文章给大家分享的是有关python面向对象编程中类方法和静态方法是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
今天学习python的面向对象编程-类方法和静态方法。
新建一个python文件命名为py3_oop3.py,在这个文件中进行操作代码编写:
#面向对象编程#类方法和静态方法class Employee:raise_amount = 1.04#定义类变量num_of_emps = 0def __init__(self,first,last,pay):self.first = firstself.last = lastself.email = first + '.' + last +'@email.com'self.pay = payEmployee.num_of_emps +=1def fullname(self):return '{} {}'.format(self.first,self.last)def apply_raise(self):self.pay = int(self.pay * self.raise_amount)#类方法用@classmethod标识符修饰#cls作为第一个参数用来表示类本身.#在类方法中用到,类方法是只与类本身有关#而与实例无关的方法@classmethoddef set_raise_amt(cls,amount):cls.raise_amount = amount#定义一个接收emp String#返回实例化对象的类方法@classmethoddef from_emp_str(cls,emp_str):first,last,pay = emp_str.split('-')#这里理解为调用#Employee(first,last,pay)#并返回return cls(first,last,pay)#静态方法用@staticmethod标识符修饰#就像一个普通的函数#判断是不是工作日@staticmethoddef is_workday(day):if day == 5 or day ==6:return Falsereturn Trueemp_1 = Employee('T','Bag',50000)emp_2 = Employee('Mc','User',6000)Employee.set_raise_amt(1.05)print(Employee.raise_amount)#1.05print(emp_1.raise_amount)#1.05print(emp_2.raise_amount)#1.05#我们调用emp_1.set_raise_amt()#在打印Employee.set_raise_amt(1.06)print(Employee.raise_amount)#1.06print(emp_1.raise_amount)#1.06print(emp_2.raise_amount)#1.06#发现类和实例对象的raise_amount全部跟着改变#我们打印emp_1的属性信息print(emp_1.__dict__)#{'first': 'T', 'last': 'Bag', 'email': 'T.Bag@email.com','pay': 50000}#这里并不包含raise_amount属性#因为调用类方法set_raise_amt#修改的是类的变量属性#定义一个emp string#调用from_emp_str()emp_str = 'T-Bag-5000'new_emp_1 = Employee.from_emp_str(emp_str)print(new_emp_1.email)#T.Bag@email.com#调用类Employee静态方法:import datetimetoday = datetime.datetime.today()print(Employee.is_workday(today))#True
运行结果:
1.051.051.051.061.061.06{'first': 'T', 'last': 'Bag', 'email': 'T.Bag@email.com', 'pay': 50000}T.Bag@email.comTrue以上就是python面向对象编程中类方法和静态方法是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
方法
对象
静态
编程
实例
属性
变量
文件
更多
标识
标识符
知识
篇文章
跟着
学习
工作
有关
实用
普通
中用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网络科技
深圳恒合互联网络科技有限公司
互联网巨头科技公司
科技互联网技术
科技制造互联网公司
期待互联网科技
中国互联网科技发展
互联网科技革命
狮子座互联网科技培训
互联网高科技股票
亿人帮互联网科技
盛创互联网科技有限公司
中国最先进互联网科技公司
成都铂石互联网科技做什么的
哈尔滨屹滨互联网科技有限公司
广州富喜互联网络科技
容联科技互联网电商
杭州科技互联网公司有哪些
网互联网络科技
互联网高科技绘画
咖啡豆
互联网科技公司的优势
科技企业和互联网企业
互联网医疗科技
互联网科技寓意
北京华百购互联网科技有限公司
互联网科技公司实习生
互联网科技股为什么大涨
重庆科技产业互联网有哪些
宁波允成互联网科技有限公司