Python零基础入门
文章平均质量分 93
零基础学Python
失心疯_2023
一个无知的学习者...
展开
-
Python零基础入门教程合集
我 的 个 人 主 页:入 门 教 程 推 荐 :虚 拟 环 境 搭 建 :PyQt5 系 列 教 程:Oracle数据库教程:原创 2023-07-25 00:23:11 · 1119 阅读 · 4 评论 -
048.Python包和模块_发布包和模块
twine安装快速发布本地已经打包成不同格式的包和模块到pypi平台pip测试上传的包和模块发布前准备创建一个项目命名规则全部小写多个单词以中划线"-“作为分割,不要使用下划线”_",pip安装队下划线支持部是很好不能和PyPi平台上已有的包名称重复项目解析项目结构示例文件代码文件代码文件代码文件代码参数说明详细文档说明:https://packaging.python.org/en/latest/tutorials/packagi原创 2024-01-09 12:02:11 · 842 阅读 · 0 评论 -
047.Python包和模块_第三方包和模块
注意python3.9开始内置模块不再有语法,由pip完全替代通过命令行工具启动指定Python版本中的或者pip不能只是在Python安装目录下直接运行或者pip命令需要到或者pip.exe所在目录,再运行或者pip命令因为在Python安装目录下找不到和pip.exe文件,就会到电脑环境变量path所有路径中去查找。原创 2024-01-09 11:59:32 · 358 阅读 · 0 评论 -
049.Python包和模块_虚拟环境超详细讲解
conda支持Python、R、Java、JavaScript、C等多种开发语言的包、依赖和环境管理工具,能运行在Windows、MacOS、Linux多个平台,可以在本地轻松创建、保存、切换环境。会将虚拟环境创建在特定的文件中(windows系统,默认在用户目录的.virtualenvs文件夹中)会将虚拟环境创建在特定的文件中(windows系统,默认在用户目录的.conda\envs文件夹中)会将虚拟环境创建在特定的文件中(windows系统,默认在用户目录的Envs文件夹中)原创 2024-01-09 11:50:51 · 906 阅读 · 0 评论 -
046.Python包和模块_导入相关
加入有两个模块A和B,模块A内导入了模块B,模块B内又导入了模块A,这样就造成了循环导入。这里导入模块的时候需要写明模块的绝对路径,是因为模块检索路径的问题,后续会讲。python相对导入与绝对导入,这两个概念是相对于包内导入而言额。两种导入语法都是绝对导入,模块检索路径由。包内导入即是包内的模块导入包内部的模块。里面的路径了,后面基本不会再改变。模块的方式执行模块内部的代码时。文件不会报错了,但是直接执行。模块时,执行居然会报错…的模块,为什么直接执行。解决办法:使用相对导入。原创 2023-12-22 16:59:46 · 1023 阅读 · 0 评论 -
045.Python包和模块_初识包和模块
我们自己写的一些好用的模块发布出去给别人用,就变成了三方包/模块。原创 2023-12-22 16:55:04 · 972 阅读 · 0 评论 -
044.Python异常处理_手动抛出异常&自定义异常
raise手动抛出异常raise语句assert 断言概念语法自定义异常前面我们所有手动抛出的异常类都是系统内置的ValueError,如果我们需要抛出一个我们自己异常类呢?示例print(age)# ========== 输出结果 ==========File "E:\StudyCode\Python\14-异常处理\06-自定义异常.py", line 8, in原创 2023-12-18 13:44:51 · 1176 阅读 · 0 评论 -
043.Python异常处理_自定义上下文管理器
自定义上下文管理器contextlib模块@contextlib.contextmanager装饰器contextlib.closing函数contextlib.nested函数(Python3.x 已弃用)实际上就是创建一个类,实现(进入)方法和__exit__()(退出)方法在(进入)方法中执行一些准备操作__exit__()(退出)方法会接收到语句体执行时抛出的异常类型、异常的值和追踪信息示例# 自定义上下文管理器print('enter方法')return 'enter方法的返回值'原创 2023-12-18 13:41:26 · 871 阅读 · 0 评论 -
042.Python异常处理_异常捕获
上述代码中并不能捕获异常也没有做异常处理,仅仅是做了自动的文件关闭操作。要捕获异常,也可以通过自定义上下文管理器来捕获。要捕获异常,就要给读取文件操作套上try语句。with 语句用于异常处理,封装了。编码范式,提高了易用性。原创 2023-12-18 13:39:31 · 835 阅读 · 0 评论 -
041.Python异常处理_初识异常
我 的 个 人 主 页:入 门 教 程 推 荐 :虚 拟 环 境 搭 建 :PyQt5 系 列 教 程:Oracle数据库教程:优 质 资 源 下 载 :dfe xxx()int(age)int(age)x / yy 0。原创 2023-12-18 13:37:45 · 962 阅读 · 0 评论 -
040.Python面向对象_设计原则
我 的 个 人 主 页:入 门 教 程 推 荐 :虚 拟 环 境 搭 建 :PyQt5 系 列 教 程:Oracle数据库教程:原创 2023-12-11 16:49:40 · 487 阅读 · 0 评论 -
039.Python面向对象_三大特性综合案例2
【代码】039.Python面向对象_三大特性综合案例2。原创 2023-12-11 16:48:40 · 414 阅读 · 0 评论 -
038.Python面向对象_三大特性综合案例1
【代码】038.Python面向对象_三大特性综合案例1。原创 2023-12-11 16:46:45 · 940 阅读 · 0 评论 -
037.Python面向对象_关于抽象类和抽象方法
【代码】037.Python面向对象_关于抽象类和抽象方法。原创 2023-12-11 09:01:27 · 862 阅读 · 0 评论 -
036.Python面向对象_self_cls_super
继承关系中,在低优先级类的方法中通过。调用高优先级类的方法。原创 2023-12-10 21:11:17 · 986 阅读 · 0 评论 -
035.Python面向对象_三大特性_封装、继承、多态
在2.2版本之前的这种深度优先的查找顺序模式下,有重叠的多继承在资源查找上就存在问题,违背了“重写可用原则”。* B2如果重写了C1中的资源,那么通过这种模式拿到的资源,还是C1中的原始资源,并不能拿到最新的B2中重写的资源。* 无重叠继承模式在变成新式类之后,实际上也就变成了有重叠继承模式了,只是最终的父类是object类。* 产生了新式类(继承自object类的类)(Python2.2版本开始才有object类)* 单继承模式的继承资源查找顺序与经典类的单继承模式一样,图解省略。原创 2023-12-06 16:31:56 · 877 阅读 · 0 评论 -
034.Python面向对象_综合案例
在这里需要注意的是,我们是需要先验证输入的内容是否满足需求,满足需求之后才会进行播报,所以装饰器的顺序也是。方便并不能直接使用装饰器进行装饰,导致无法直接进行语音播报。解决方法:我们将执行语音播报部分单独封装成一个方法,然后。这里出现了一个新的问题点:我们将之前的私有方法。方法结构与上面的运算方法不一致,导致。装饰器进行验证,然后再执行。改变成了装饰器,但是我们的。装饰器中再调用这个方法。在下面,就是优先执行。原创 2023-11-30 08:33:28 · 973 阅读 · 0 评论 -
033.Python面向对象_类&补充_生命周期
内存管理机制:当一个对象 被引用,引用计数+1,删除引用,引用计数-1;引用计数为0时,对象被自动释放。上面这种垃圾回收的检测机制需要把所有记录在双向链表中的“容器对象”进行检测一遍,是非常的耗费性能。个人理解:当出现循环引用对象(无法被释放的对象)个数达到一定阈值时候才会触发垃圾检测。垃圾回收器当中,新增的对象个数-消亡的对象个数,达到一定的阈值时,才会触发垃圾检测。基于这个问题,Python就提出了一个假设:命越大,越长寿。获取对象的引用计数,需要通过第三方库。方法来查看垃圾回收器,跟踪的对象个数。原创 2023-11-25 20:50:56 · 915 阅读 · 0 评论 -
032.Python面向对象_类&补充_描述器
方法,此时,我们还不知道在这个方法中执行什么,所有先不实现任何操作,用占位关键字占位。缺点:每1个属性就需要定义3个方法来控制,那3个属性就需要9个方法,很繁琐!方法,但是并没有真正实现值的存储,那么我们来看一下如何实现值的传递和存储。三个方法,在这三个方法中有四个参数,我们来看一下这四个参数分别代表什么。哦豁,没有报错,运行成功了!方法中就可以接收到这个函数体,我们把这个函数体保存在实例属性中。同样的,最后把要增加的操作执行在调用这个函数体之前就行了。上面我们讲的这些案例中,仅仅只是实现了描述器中的。原创 2023-11-20 19:52:32 · 93 阅读 · 0 评论 -
030.Python面向对象_类&补充_只读属性
【代码】030.Python面向对象_类&补充_只读属性。原创 2023-10-31 10:11:20 · 186 阅读 · 0 评论 -
029.Python面向对象_类&补充_私有化属性&方法
3、改名操作,只会在类的定义阶段检查子代码语法的时候执行一次,之后定义的。super_class模块代码(super_class.py)2、隐藏是对外不对内(在类外部无法调用,在类内部可以直接调用)sub_class模块代码(sub_class.py)1、本质只是一种改名操作。开头的属性,都不会改名。原创 2023-10-26 21:39:52 · 154 阅读 · 0 评论 -
028.Python面向对象_类&补充_元类
在任意未使用的端口上启动HTTP服务器,并打开Web浏览器以交互方式浏览文档。方法2:使用第三方模块(Sphinx、epydoc、doxygen)4、在本地机器上的给定端口上启动HTTP服务器,用浏览器查看类描述。5、将模块的HTML文档写到当前目录下的文件中。3、查看模块名称中包含指定关键字的模块。生成描述文档(只需要执行1、5即可)方法1:使用内置模块(pydoc),先切换到对应盘符,再使用。2、直接查看模块的描述文档。如果模块名称是中文,则会报错。原创 2023-10-09 23:50:03 · 752 阅读 · 0 评论 -
027.Python面向对象_类&方法
根据方法内部使用对象来确定如果在方法内部需要使用到实例对象本身的,则定义实例方法如果在方法内部需要使用到类对象本身的,则定义类方法如果在方法内部既不需要使用实例对象,也不需要使用类对象的,则定义静态方法。原创 2023-09-30 21:23:29 · 150 阅读 · 0 评论 -
000.Python解释器与Pycharm编辑器安装
在正式学习Python之前,大家需要先了解一些相关的知识点Python解释器:Python解释器是运行Python程序的核心,可以在命令行或交互式环境下直接运行Python代码。集成开发环境(IDE):IDE是一种集成了编辑器、调试器、交互式命令行等功能的软件环境,可以提高Python开发的效率和质量。常用的Python IDE包括PyCharm、Spyder、Visual Studio Code等。原创 2023-09-28 11:21:04 · 253 阅读 · 0 评论 -
026.Python面向对象_类&属性
某一个具体对象特征的抽象例如:一个具体的对象根据这个具体对象抽象出来的类(抽象类),其属性和行为是没有具体的值语法class ClassName : # 类执行体 pass。原创 2023-09-26 14:57:10 · 123 阅读 · 0 评论 -
025.Python面向对象_基本理论
在Python中,万物皆对象对象是具体物体(如:一个人、一辆车、一台电脑)举例Python中的体现Python是一门特别彻底的面相对象编程(OOP)的语言。原创 2023-09-21 17:15:18 · 109 阅读 · 3 评论 -
024.Python基础进阶_文件其他操作
文件其他操作* 文件的其他相关操作都是基于 `os` 模块的,所以在开始的时候需要导入模块 `import os`* 本文中用到了`os`、`os.path`、`shutil`模块原创 2023-09-21 09:53:12 · 115 阅读 · 2 评论 -
023.Python基础进阶_文件读写操作
概念:存放数据的容器作用:持久性的存储数据内容组成:同级目录下不允许多个同名文件存在一般不同的扩展名对应着不同的文件格式,有着不同的存储约定,方便程序处理文本文件(txt、doc、xlsx...)、二进制文件(图片、音乐、视频...)原创 2023-09-18 19:12:49 · 91 阅读 · 1 评论 -
022.Python基础进阶_递归函数&作用域
使用递归函数的优点是逻辑简单清晰,缺点是过深的调用会导致栈溢出。作用域为:整个文件内部。原创 2023-09-17 21:20:57 · 90 阅读 · 0 评论 -
021.Python基础进阶_生成器
方法启动生成器,会执行到第3行,返回yield关键字后面的值:1,然后暂停。捕获异常,然后继续往后执行,如果此处不捕获异常,程序则会直接退出。函数在此行停止运行,并且抛出。语句,此时函数暂停在第3行,原创 2023-09-12 16:44:59 · 84 阅读 · 0 评论 -
020.Python基础进阶_装饰器
装饰器(Decorator)是Python中一种特殊的语法, 是一种强大的函数或类修饰机制,用于在不修改原始函数或类代码的情况下,对其进行功能扩展或修改。装饰器基于函数式编程的概念,通过将函数作为参数传递给另一个函数,并返回一个新的函数来实现。原创 2023-09-10 01:01:05 · 132 阅读 · 0 评论 -
019.Python基础进阶_函数式编程
示例代码# 初始函数# 定义偏函数# 调用偏函数通过使用标准库functools中的partial函数来创建一个新的函数示例代码# import functools# 初始函数# 定义偏函数# 调用偏函数示例代码def func1(flog):func2执行体语法lambda 参数1, 参数2, ..., 参数n: 表达式# 表达式的结果就是匿名函数的返回值限制只能写一个表达式,不能直接return表达式的结果就是返回值。原创 2023-09-03 23:29:36 · 125 阅读 · 0 评论 -
018.Python基础进阶_初识函数
函数基本概念作用分类定义参数定义场景参数分类参数形式位置参数默认参数关键字参数不定长参数函数的装包和拆包装包拆包应用参数传递分类语法def function_name(arg1: str, arg2: int):"""document"""return num# 注意:在创建自定义类方法的时候必须加self参数,否则会报错说明def # 函数定义关键字function_name # 函数名。原创 2023-08-28 10:50:01 · 171 阅读 · 1 评论 -
017.Python基础语法_时间日期操作
时间元组转换为格式化日期,可读性更强:strftime()import time# str:格式字符串# struct_time:时间元组# 示例print(r)# -----输出结果-----常用格式字符串格式字符串说明范围%Y四位数的年份表示000 - 9999%y两位数的年份表示00 - 99%m两位数的月份表示01 - 12%d两位数的日表示01 - 31%H24小时制小时数0 - 23%h12小时制小时数01 - 12%M。原创 2023-08-23 16:31:51 · 139 阅读 · 1 评论 -
016.Python基础语法_集合操作
可变集合定义方式一:通过{}直接定义一个集合s = {元素1, 元素2, ...}方式二:将一个可迭代对象转换成一个集合# 将列表转换为集合时,会自动将列表中的重复元素去重# 如果是将一个字典转换成集合,那么之后将字典的key作为集合的元素# 示例s4 = set({'name': '失心疯', 'age': 36, 'sex': '男'})方式三:集合推导式s = set(表达式 for 变量 in range(范围) if 条件)原创 2023-08-22 23:19:22 · 104 阅读 · 0 评论 -
015.Python基础语法_字典操作
实例化类对象,创建空字典dic = dict()通过{}定义dic = {key1: value1, key2: value,...}通过fromkeys()静态方法静态方法:类和对象都可以调用的方法分类静态方法作用创建一个字典,key为序列中的元素,value为指定的值语法参数seq:指定序列,其中的元素将作为字典的keyv:指定的值,生成字典的所有key的值都是同样的返回值返回一个新的字典对象通过对象调用该方法,并不会修改原字典对象,而是生成一个新的字典对象。原创 2023-08-22 10:38:41 · 110 阅读 · 0 评论 -
014.Python基础语法_元组操作
一个元素的元组定义t = ('a', )# 注意:一个元素的元组定义的时候,最后一定要跟一个“,”示例:t1 = (1)t2 = (1, )# -----输出结果-----多个元素的元组定义t = ('a', 'b', 'c')多个对象以逗号隔开,默认为元组t = 1, 2, 3, 'sxf'列表转换为元组# 内置函数:tuple() tuple(seq)补充:元组嵌套t = (1, 2, 3, ('a', 'b', 'c'))原创 2023-08-21 14:30:15 · 103 阅读 · 0 评论 -
013.Python基础语法_列表操作
方式一变量 = [元素1, 元素2, ...]变量 = list()方式二列表生成式变量 = range(start, end, step)# 在python2中会直接生成一个[1, 2,...99998]的列表,耗费内存# 在python3中只会直接生成一个range(1, 99999)的生成器,节约内存。用一个生成一个列表推导式(从一个列表list推到出另一个列表list)映射解析(两个列表中元素个数一对一变更)变量 = [表达式 for 变量1 in 原列表]# 示例。原创 2023-08-20 23:29:10 · 134 阅读 · 1 评论 -
012.Python基础语法_字符串操作
【代码】012.Python基础语法_字符串操作。原创 2023-08-17 17:16:20 · 120 阅读 · 1 评论 -
011.Python基础语法_数值类型操作
二进制:逢2进1,八进制:逢8进1,十进制:逢10进1,十六进制:逢16进1。进制的概念:进位的制度(逢x进1,x进制)原创 2023-08-17 16:21:32 · 128 阅读 · 0 评论