【Python中面向对象的学习】

简介: 【Python中面向对象的学习】

面向对象:


类:基础标准


对象:根据标准产生的具体的实例


关系:对象是类的实例化结果,一个类会产生多个对象


使用面向对象:


先有类----通过类创建对象----对象调用类里规定的属性、方法


python里的魔术方法:由类提供,两个下划线开始,两个下划线结束



__init__方法:在创建一个对象时默认被调用


__init__方法里的self参数,在创建对象时不需要传递参数


在类的内部,可以使用self来使用属性和调用方法;在类的外部,需要使用对象名来使用属性和调用方法


__del__方法:


创建对象后,python解释器默认调用__init__()方法;


当删除对象时,python解释器会默认调用__del__方法


__str__方法和__repr__方法


两个方法都用于显示输出结果,__str__是面向用户的,显示结果更加友好,__repr__是面向程序员的


调用repr()函数时内部会调用对应的__repr__函数,调用str()函数时内部会调用对应的__str__函数


%r格式化对应的是调用repr()函数,%s格式化对应的是调用repr()函数


当调用print函数时,对应调用的是__str__函数;当直接在终端输出对象时,调用的是__repr__函数



比较运算符相关的魔法方法:


__eq__:等于(=)         __ne__:不等于(!=)


__lt__:小于(<)            __gt__:大于(>)


__le__:小于等于(<=)   __ge__:大于等于(>=)



算术运算符相关的魔法方法:


__add__:+              __sub__:-


__mul__:*               __truediv__:/


__mod__:%           __pow__:**



类型转换相关的魔法方法:


__int__:整数           __float__:浮点数


__str__:浮点数       __bool__:布尔型


内置属性


使用内置函数dir可以查看一个对象支持的所有属性和方法


__slots__:Python中支持动态属性,可以直接通过点语法直接给一个对象添加属性,代码更加的灵活。


但是在某些情况下,我们可能需要对属性进行控制,此时,就剋使用__slots__实现

__doc__:表示类的描述信息


__module__: 表示当前操作的对象在那个模块


__class__: 表示当前操作的对象的类是什么


__dict__:以字典的形式,显示对象所有的属性和方法

__getitem_、\_setitem__和__delitem__方法:是将对象当做字典一样进行操作


实例属性


通过类创建的对象被称为实例对象,对象属性又称为实例属性,


记录对象各自的数据,不同对象的同名实例属性,记录的数据各自独立,互不干扰。


类属性


类属性就是类对象所拥有的属性,它被该类的所有实例对象所共有,类属性可以通过类对象或者实例对象访问


类属性和实例属性不能同名,如果有同名实例属性,实例对象会优先访问实例属性。

类属性只能通过类对象修改,不能通过实例对象修改

类属性也可以设置为私有


相关文章
|
3月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
123 61
|
9天前
|
存储 算法 API
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
126 82
|
3月前
|
机器学习/深度学习 Python
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
179 3
|
1天前
|
存储 API 数据安全/隐私保护
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
【02】整体试验思路,在这之前我们发现sec_uid,sec_uid是什么和uid的关系又是什么?相互如何转换?python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
23 6
|
2天前
|
C语言 Python
Python学习:内建属性、内建函数的教程
本文介绍了Python中的内建属性和内建函数。内建属性包括`__init__`、`__new__`、`__class__`等,通过`dir()`函数可以查看类的所有内建属性。内建函数如`range`、`map`、`filter`、`reduce`和`sorted`等,分别用于生成序列、映射操作、过滤操作、累积计算和排序。其中,`reduce`在Python 3中需从`functools`模块导入。示例代码展示了这些特性和函数的具体用法及注意事项。
|
10天前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
20 3
|
2月前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
2月前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
1月前
|
数据可视化 数据挖掘 大数据
1.1 学习Python操作Excel的必要性
学习Python操作Excel在当今数据驱动的商业环境中至关重要。Python能处理大规模数据集,突破Excel行数限制;提供丰富的库实现复杂数据分析和自动化任务,显著提高效率。掌握这项技能不仅能提升个人能力,还能为企业带来价值,减少人为错误,提高决策效率。推荐从基础语法、Excel操作库开始学习,逐步进阶到数据可视化和自动化报表系统。通过实际项目巩固知识,关注新技术,为职业发展奠定坚实基础。
|
2月前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。

热门文章

最新文章