Python__31--类属性、类方法、静态方法

简介: 类属性、类方法、静态方法

1 Pycharm中定义类

在类之外定义的def称为函数,在类之内定义的称为方法

# 在类之外定义的def称为函数,在类之内定义的称为方法
class Student:                         # Student为类名,可由多个单词组成,每个单词首字母大写,其余小写
    native_place='吉林'                # 类属性
    def __init__(self,name,age):       # name,age为实例属性
        sef.name=name
        self.age=age
    def info(self):                    # 实例方法
        print('我的名字叫',self.name,'年龄是',self.age)
    def eat(self):                     # 实例方法
        print('学生在吃饭')
    @classmethod                       # 类方法
    def cm(cls):
        print('类方法')
    @staticmethod                      # 静态方法
    def sm():
         print('静态方法')

2 创建对象

stu1=Student('张三',20)
stu1.eat()              # 对象名.方法名
print(stu1.name)
print(stu1.age)
Student.eat(stu1)       # 2和5行等价,类名.方法名(类的对象)-->实际上就是方法定义处的self

3 类属性、类方法、静态方法

类属性、类方法、静态方法的使用方式

3.1 访问类属性

print(Student.native_place)

stu1.native_place

类中方法外的变量称为类属性,被该类的所有对象共享

3.2 调用类方法

Student.cm()

使用类名直接访问的方法

3.3 调用静态方法

Student.sm()

使用类名直接访问的方法

3.4 实例方法

stu1=Student(张三',20)
stu.eat()
Student.eat(stu)

4 动态绑定属性和方法

仅在绑定的某个实例对象中可用,其他实例对象不可用

绑定属性

stu1.gender='女'
print(stu1.gender)

绑定方法
将类之外的函数绑定到实例对象上,该函数就叫做该实例对象的方法

def show():
    print('哈哈')
stu1.show=show
print(stu1.show())
相关文章
|
8天前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
77 1
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
|
2月前
|
调度 Python
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
|
2月前
|
传感器 大数据 API
Python数字限制在指定范围内:方法与实践
在Python编程中,限制数字范围是常见需求,如游戏属性控制、金融计算和数据过滤等场景。本文介绍了五种主流方法:基础条件判断、数学运算、装饰器模式、类封装及NumPy数组处理,分别适用于不同复杂度和性能要求的场景。每种方法均有示例代码和适用情况说明,帮助开发者根据实际需求选择最优方案。
75 0
|
2月前
|
Python
Python字符串center()方法详解 - 实现字符串居中对齐的完整指南
Python的`center()`方法用于将字符串居中,并通过指定宽度和填充字符美化输出格式,常用于文本对齐、标题及表格设计。
|
3月前
|
安全 Python
Python语言中常用的文件操作方法探讨
通过上述方法的结合使用,我们可以构筑出强大并且可靠的文件操作逻辑,切实解决日常编程中遇到的文件处理问题。
165 72
|
13天前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
|
2月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
128 4
|
2月前
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
|
3月前
|
数据管理 开发工具 索引
在Python中借助Everything工具实现高效文件搜索的方法
使用上述方法,你就能在Python中利用Everything的强大搜索能力实现快速的文件搜索,这对于需要在大量文件中进行快速查找的场景尤其有用。此外,利用Python脚本可以灵活地将这一功能集成到更复杂的应用程序中,增强了自动化处理和数据管理的能力。
186 0

推荐镜像

更多