python快乐学习
文章平均质量分 61
python编程学习记录
Derrick56
这个作者很懒,什么都没留下…
展开
-
Python异常处理
没法通过其他的代码进行处理的问题 语法错误 比如定义函数写成了 dfe xxx() 这种错误, 可以直接通过IDE或者解释器给出的提示进行修改 逻辑错误 语法层面没有问题, 但是自己设计的逻辑出现问题 例如 用户输入年龄, 判定是否成年 if age < 18: print("已经成年") 这种错误, IDE或者解释器无法帮我们检测出, 只有我们通过代码测试原创 2022-07-07 21:09:23 · 282 阅读 · 0 评论 -
面向对象三大特性
将一些属性和相关方法封装在一个对象中对外隐藏内部具体实现细节 内部实现, 外界不需要关心 外界只需要根据"内部提供的接口"去使用就可以 1. 使用起来更加方便 因为已经把很多相关的功能, 封装成一个整体 类似于像外界提供一个工具箱 针对于不同的场景, 使用不同的工具箱就可以 2. 保证数据的安全 针对于安全级别高的数据, 可以设置成"私有"; 可以控制数据为只读 外界无法修原创 2022-07-06 14:02:34 · 233 阅读 · 0 评论 -
面向对象编程-综合案例
下图中使用的算法比较不安全,因为result为全局变量,修改result变量值可以使计算结果发生错误 下图使用类对象,也会出现一些问题,无法同时进行多个表达式的运算在其他文件里使用了这个类而且在不同文件里面做了不同表达式的运算,结果可能会出错 使用实例对象可以避免以上问题对代码进行容错处理 使用装饰器进行优化 装饰器虽然已经写好,但是仍然有一些细节问题,装饰器本质上是一个函数,但其写在类的内部属于一个实例方法,在外界可以通过c1实例进行调用,但是使用c1调用装饰器并没有意义,而且会报错 为了不让装饰器被外界原创 2022-07-01 16:02:14 · 290 阅读 · 0 评论 -
Python对象的生命周期,以及周期方法
__new__方法 当我们创建一个对象是, 用于给这个对象分配内存的方法 通过拦截这个方法, 可以修改对象的创建过程 比如:单例设计模式__init__方法 每个对象实例化的时候,都会自动执行这个方法 可以在这个方法里面,初始化一些实例属性 __del__方法 当对象被释放的时候调用这个方法 可用于在这个方法中清理资源 personCount为全局变量,可以任意修改,不安全 Person.personCount和self.__class__.p原创 2022-07-01 08:28:10 · 1200 阅读 · 0 评论 -
面向对象在Python中的实践
Money既是类名,也是变量名根据类创建实例 直接通过对象,动态添加 语法: 对象.属性 = 值 dic可以打出当前对象的所有属性方式1:类名.类属性 = 值 方式2 class Dog: dogCount = 0 注意: 为什么可以通过对象访问到类属性? 答:和Python对象的属性查找机制有关 优先到对象自身去查找属性,找到则结束 如果没有找到,则根据__class__找到对象对应的类,到这个类里面查找 改原创 2022-06-29 17:31:57 · 349 阅读 · 0 评论 -
Python文件操作
文件的使用流程 读取二进制文件原创 2022-05-31 10:19:56 · 93 阅读 · 0 评论 -
Python函数
函数的概念 函数的基本使用 函数的参数 单个参数 多个参数 方式一 方式二 不定长参数 方式一 方式二 缺省参数 函数的返回值 函数的使用描述 函数的作用域 匿名函数 闭包 递归 生成器 ...原创 2022-05-29 11:28:22 · 90 阅读 · 0 评论 -
Python时间日历
time模块 获取当前时间戳 获取时间元组 获取格式化的时间 秒 - > 可读时间 时间元组 -> 可读时间 格式化日期字符串< -- >时间戳 时间元组 -> 格式化日期 格式化日期 -> 时间元组 时间元组 -> 时间戳 获取当前CPU时间 休眠n秒 calendar模块 获取某月日历 datetime模块 获取当天日期 单独获取当前的年月日...原创 2022-05-24 15:37:18 · 83 阅读 · 0 评论 -
Python集合
字符串、列表、元组都是有序的 有序的:可以通过指定索引值来获取里面的元素 集合是不可随机访问的 定义 可变集合 可以进行增删改查 s = {1, 2, 3, 4} s = {iterable} 集合推导式 不可变集合 创建好之后,无法增删改,只能查 常用操作 单一集合操作 可变集合 增 删 s.remove() 集合中没有这个元素,则返回一个错误 s.discard() 若没有这个元素,则do nothing ...原创 2022-05-24 10:20:21 · 73 阅读 · 0 评论 -
Python字典
定义 方式一 方式二 注意事项 key不能重复,如果重复,后值会把前值覆盖 key必须是任意不可变类型 常用操作 增 删 dic.pop() 删除指定的键值对,并返回对应的值 dic.popitem() 删除最后一个键值对,并以元组的形式返回该键值对 dic.clear() 删除字典内所有键值对 改 只能改值,不能改key 修改单个键值对 批量修改键值对 查 获取单个值 dic[ke...原创 2022-05-23 17:11:26 · 88 阅读 · 0 评论 -
Python元组
#定义原创 2022-05-23 10:18:03 · 98 阅读 · 0 评论 -
python列表
#列表生成式 range(stop) [0, 1, 2..., stop-1] range(start, stop[, step]) [start,start + step, start + 2*step ... < stop]原创 2022-05-22 21:54:52 · 111 阅读 · 0 评论 -
Python常用数据类型操作
#十进制数转换成二进制数 num = 18 print(bin(num)) #十进制数转换成二进制数 print(oct(num)) #十进制数转换成十六进制数 print(hex(num)) #数学函数 #内建函数 #最小值 print(min(1, 12, 3, 5)) print(min([1, 3, 5, 2])) #四舍五入round函数 #math模块函数 math.ceil() 上取整函数 math.floor() 下取整函...原创 2022-05-20 20:58:33 · 140 阅读 · 0 评论 -
python中print函数用法简介
# 我的名字是xxx,年龄是xxx print("我的名字是%s,年龄是%d"%(name, age)) # %[(name)][flags][width][.precision]typecode # [ ]:代表可以省略 # (name) # 表示,根据,制定的名称(key),查找对应的值,格式化到字符串中 mathScore = 59 englishScore = 58 print("我的数学分数是%(ms)d,英文的分数是%(es)d"%({"es":englishScore, "ms原创 2022-05-18 11:11:31 · 492 阅读 · 0 评论