python面向对象
文章平均质量分 64
Fighting_1997
唯有勤奋不会辜负于你。
展开
-
面向过程和面向对象程序设计优缺点总结
项目名称面向对象程序设计面向过程程序设计(也叫结构化编程)定义面向对象顾名思义就是把现实中的事务都抽象成为程序设计中的“对象”,其基本思想是一切皆对象,是一种“自下而上”的设计语言,先设计组件,再完成拼装。面向过程是“自上而下”的设计语言,先定好框架,再增砖添瓦。通俗点,就是先定好main()函数,然后再逐步实现mian()函数中所要用到的其他方法。特点封装、继承、多态算法+数据结构优势适用于大型复杂系统,方便复用适用于简单系统,容易理解劣势比较抽象、性...原创 2022-03-04 17:41:04 · 1165 阅读 · 0 评论 -
python中heapq模块
堆堆是非线性的树形的数据结构,有两种堆,最大堆与最小堆。( heapq库中的堆默认是最小堆)最大堆,树种各个父节点的值总是大于或等于任何一个子节点的值。最小堆,树种各个父节点的值总是小于或等于任何一个子节点的值。我们一般使用二叉堆来实现优先级队列,它的内部调整算法复杂度为logN。堆是一个二叉树,其中最小堆每个父节点的值都小于或等于其所有子节点的值。整个最小堆的最小元素总是位于二叉树的根节点。python的heapq模块提供了对(最小)堆的建立和使用。heapq堆数据结构原创 2022-02-18 12:12:15 · 593 阅读 · 0 评论 -
python 文件操作
文件目标文件的概念文件的基本操作文件/文件夹的常用操作文本文件的编码方式01. 文件的概念1.1 文件的概念和作用计算机的 文件,就是存储在某种 长期储存设备 上的一段 数据长期存储设备包括:硬盘、U 盘、移动硬盘、光盘…文件的作用将数据长期保存下来,在需要的时候使用CPU内存硬盘1.2 文件的存储方式在计算机中,文件是以 二进制 的方式保存在磁盘上的文本文件和二进制文件文本文件可以使用 文本编辑软件 查看本质上还是二进制文原创 2022-02-03 19:09:24 · 140 阅读 · 0 评论 -
python 面向对象编程思想
面向对象三大特性封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中定义类的准则继承 实现代码的重用,相同的代码不需要重复的编写设计类的技巧子类针对自己特有的需求,编写特定的代码多态 不同的 子类对象 调用相同的 父类方法,产生不同的执行结果多态 可以 增加代码的灵活度以 继承 和 重写父类方法 为前提是调用方法的技巧,不会影响到类的内部设计...原创 2022-02-03 09:33:56 · 843 阅读 · 0 评论 -
Python __new__方法详解
单例目标单例设计模式__new__ 方法Python 中的单例01. 单例设计模式设计模式设计模式 是 前人工作的总结和提炼,通常,被人们广泛流传的设计模式都是针对 某一特定问题 的成熟的解决方案使用 设计模式 是为了可重用代码、让代码更容易被他人理解、保证代码可靠性单例设计模式目的 —— 让 类 创建的对象,在系统中 只有 唯一的一个实例每一次执行 类名() 返回的对象,内存地址是相同的单例设计模式的应用场景音乐播放 对象回收站 对象打印机 对象…原创 2022-02-03 09:27:13 · 11153 阅读 · 0 评论 -
详解Python函数如何重载?
这篇文章主要介绍了Python函数重载,通过文字和代码两者结合讲解,希望对大家学习有一定的帮助。什么是函数重载?简单的理解,支持多个同名函数的定义,只是参数的个数或者类型不同,在调用的时候,解释器会根据参数的个数或者类型,调用相应的函数。重载这个特性在很多语言中都有实现,比如 C++、Java 等,而 Python 并不支持。这篇文章呢,通过一些小技巧,可以让 Python 支持类似的功能。参数个数不同的情形先看看这种情况下 C++ 是怎么实现重载的#include <iostream>转载 2021-05-19 23:19:49 · 11949 阅读 · 1 评论 -
实例方法、类方法和静态方法区别和联系
实例方法、类方法和静态方法是Python在使用过程中必须掌握的三大类型方法,为帮助各位小伙伴能快速的入门,由我煞费苦心整理以下文档,若对你有帮助,请点赞、评论和收藏哦!! 在了解实例方法、类方法和静态方法之前,我们应该先理解方法的基本概念,下面用简单的例子进行解释。方法描述一个目标的行为动作;比如描述一个人怎么吃、怎么喝、怎么玩。和函数非常相似,都封装了一系列行为动作;都可以被调用之后,执行一系列行为动作;最主要的区别就是:调用方式# -------------------------原创 2021-05-13 21:41:57 · 1312 阅读 · 0 评论 -
三分钟读懂type和object以及其他类的关系(通俗易懂)
最近有人问type和object以及和其他类之间的关系问题,接下来我将用最简单的图和语言来解释一下。首先,强调两个名词概念:经典类:没有继承(object)新式类:继承(object),拥有object里面的方法。其实,object是一个封装好内部属性的一个类。python2.x版本定义一个类时,默认不继承(object)。python3.x版本定义一个类时,默认继承(object)。建议使用我们在使用过程选择新式类首先,我们先举个小例子,以Dog创建一个类,通过实例化创建d,确定d.__cla原创 2021-05-12 23:32:49 · 727 阅读 · 1 评论 -
面向对象三大特性:封装、继承、多态(最全面最详细的解释)
面向对象三大特性:封装、继承、多态封装概念:将一些属性和相关方法封装在一个对象中,对外隐藏内部具体实现细节。内部实现,外界不需要关心,外界只需要根据”内部提供的接口“去使用就可以。好处:使用起来更加方便:因为已经把很多相关的功能,封装成一个整体,类似于像外界提供一个工具箱,针对于不同的场景,使用不同的工具箱就可以;保证数据的安全:针对于安全级别高的数据,可以设置成”私有“,可以控制数据为只读(外界无法修改),也可以拦截数据的写操作(进行数据校验和过滤);利于代码维护:如果后期,功能代码需要原创 2021-05-12 14:51:23 · 9984 阅读 · 1 评论 -
Python面向对象之小白学习笔记(最新最全最实用)
最近一段时间,恶补Python之面向对象知识,同时也整理了很多的笔记,与大家分享,如果大家学习过程中有什么问题,可以评论留言,我们一起探讨。原创 2021-05-09 20:40:47 · 2495 阅读 · 0 评论 -
python a += 和 a = a + 真的相同吗?
a += b 和 a = + b真的相同吗?举个例子a = 5b = ab += 5print(a, b)结果a, b 10, 10看到结果你,会不会想打死博主,你怎么回事?不要急,再给你举个例子a = [1, 2]b = ab += [3, 4]print(a, b)b = b + [5, 6]print(a, b)结果a, b [1, 2, 3, 4], [1, 2, 3, 4]a, b [1, 2, 3, 4], [1, 2, 3, 4, 5,原创 2021-05-07 20:39:22 · 296 阅读 · 0 评论 -
class类中def函数必须要(self)吗?
很多资料中强调调用class类中def函数中(self)是必须要写的,因为它与解释器之间有一种默认的存储和读取操作。举一个例子来说明self并不是必须含有的。class Person: def run(): print("没有self")Person.run() # 直接运行run运行结果没有self通过结果来看,很明显,如果直接通过类属性调用函数是不需要设置self参数的,但如果使用实例化,必须使用self参数,否则无法对应self和实例之间的关系。...原创 2021-05-05 13:37:21 · 5855 阅读 · 5 评论