
Python
文章平均质量分 82
本专栏主要介绍编程语言Python相关知识
编辑器爱好者
软件测试从业12年,对自动化测试、性能测试、稳定性测试有深刻的理解,软件设计行业从业2年,产品规划从业4年,擅长从工作中发现效率及质量问题并加以改进和规范。涉足过:VC++、PHP、Delphi、Lazarus、Python、Go、Javascript/HTML/CSS、VBA/VBS、Bash、AWK,对办公软件PowerPoint/Excel进行过扩展开发,对编辑器有较浓兴趣,使用过Vim/EmEditor/UltraEdit/Cudatext/VSCode/EverEdit并对其进行扩展开发(宏/插件),是国产编辑器EverEdit手册完整版的作者、wxFormBuilder贡献者。
展开
-
Tkinter图形编程如何设置快捷键及按键名称大全
Tkinter的`bind_all`用于为应用所有组件绑定事件,其首参数为事件序列。常见的有单个按键事件,像`<Return>`等;修饰键组合事件,如`<Control - c>`;功能键事件,如`<F1>` ;以及鼠标事件,像`<Button - 1>` 。开发者能借此灵活捕获各类用户输入操作。原创 2025-03-08 14:31:58 · 941 阅读 · 0 评论 -
Python自学 - 站在GUI编程门前(请先捡个装备-EasyGUI)
EasyGUI应该是所有Python GUI库里使用代价最小的库了,它不需要一行界面布局代码,同时又能解决大部分的界面交互需求!是开发小工具的非常好的选择!我对它的评价:很丑但是很温柔!作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!<< 返回目录。原创 2025-01-16 23:23:23 · 985 阅读 · 0 评论 -
Python自学 - 三方包(pip使用方法)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!这里囊括了约60万个项目,所以,你在开发项目时,如果发现标准库里没有你要的功能,可以去这里看看!未正确安装,可以使用下面的命令进行安装。注:这是正确安装的报文。原创 2025-01-15 21:41:02 · 516 阅读 · 0 评论 -
Python自学 - 标准库介绍
标准库是安装Python时自带的一些模块集合,集成了丰富的功能,避免用户反复造轮子,这极大的提高了生产效率!,读者可以阅读官方手册 ,这里有非常详细的各种内置库的使用说明。作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!<< 返回目录。原创 2025-01-15 20:24:41 · 922 阅读 · 0 评论 -
Python自学 - “包”的创建与使用(从头晕到了然)
import到哪个目录,就执行哪个目录的文件。中的导入语句要和业务代码中的import语句保持一致,不要踩到脚!🕮说明本文中的`__init__.py`文件中的`import`都使用了相对路径,`Python`也支持绝对路径,如:`from social.human.human import *`作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!<< 返回目录。原创 2025-01-14 22:42:14 · 977 阅读 · 0 评论 -
Python自学 - 模块(几种导入模块的方法)
便于代码复用:一些公共处理逻辑都可以放在特定的模块中,同项目或不同项目都可以共享。更利于代码组织:使用模块后,不同的功能块都可以放在不同的模块文件中,修改某个模块不会影响其他。便于团队协作:开发大型项目时,不同模块由不同人开发,可以做到互不影响,提高生产效率。作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!<< 返回目录。原创 2025-01-14 13:38:33 · 1032 阅读 · 0 评论 -
Python自学 - 程序调试(IDE的调试功能:怎一个方便了得!)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!(集成开发环境)的话,调试程序会更方便,设置断点、步进执行等功能,都已经集成在了IDE的菜单中,用户可以通过菜单或快捷键调用,:设置断点:将光标定位到目标行,选择主菜单“运行 -> 切换断点 -> 行断点”,或使用快捷键执行该操作。:根据需要来选择调试操作,选择主菜单“运行 -> 调试操作”,在展开的子菜单选择需要的操作。读者可以边看代码边调试,随时查看变量值 ,这是。原创 2025-01-13 21:14:53 · 442 阅读 · 0 评论 -
Python自学 - 程序调试(pdb也不难)
一般来说,程序中的语法错误,会由解释器来报错,往往在输出报文中有明显的提示,真正需要调试的往往是一些逻辑错误,它们不会报错,但是却得不到正确的业务结果,这些错误才是调试工作的主要部分。是程序调试中的一个重要概念和工具,如果不加控制,代码在执行时,会一撸到底,这样就没有办法查看过程中的详细情况了,所以在代码中执行,给一些地方打上。作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!,检查变量的值,以及控制程序的执行流程。原创 2025-01-13 20:31:33 · 1419 阅读 · 0 评论 -
Python自学 - 使用自定义异常
在Python中, 不仅可以使用内置异常,用户还可以创建自己的异常。自定义异常需要继承自Exception示例1:一个简单的自定义异常def __init__(self, message="自定义异常发生"):if b!= 0:else:raise MyCustomError('这个该死的异常!原创 2025-01-12 20:36:41 · 345 阅读 · 0 评论 -
Python自学 - 异常基本用法
因为在程序运行时,遇到的问题是无法穷举的,不可能在代码中为所有错误分支都进行保护,那样代码工作量将异常巨大,且代码的可读性会非常差!作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!异常是一种保护,在代码出现不可预知的错误时,抛出错误提醒和中止代码分支!读者在编写程序时,如果觉得某个分支不太可靠,可以主动的抛出异常。不同类型的异常可以抛出不同的异常对象,并且异常对象要符合实际情况,不能有出现了。分支打印正常信息,而执行。原创 2025-01-12 17:54:07 · 968 阅读 · 0 评论 -
Python自学 - 类进阶(生成器)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!生成器是一种特殊的迭代器,它允许在迭代过程中暂停和恢复函数的执行。,这也从一个侧面说明,普通人避之不及的死循环并不是一无是处!再次执行函数时,会从上次暂停的地方继续执行。示例会无限循环处理c1, c2两个任务。生成器可以用于协同程序,实现多任务处理。时会进入暂停状态并保存状态。注意:生成器的解析使用括号。函数会向生成器发送数据。原创 2025-01-11 18:49:10 · 457 阅读 · 0 评论 -
Python自学 - 类进阶(迭代器)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!方法返回迭代器的下一个元素。当没有更多元素时,应该引发 StopIteration 异常。迭代器的好处是不占内存,它并不会像列表一样,把每个成员都占满。示例中声明了迭代器的长度由对象创建时的参数。该方法使对象可迭代,意味着可以使用。进行递增和判断,当达到最大长度时,抛出。方法必须返回迭代器对象本身,即。异常(这是迭代器的标准动作),原创 2025-01-11 17:47:23 · 366 阅读 · 0 评论 -
Python自学 - 类进阶(元类)
返回目录 元类是创建类的类,是一种较复杂的编程概念。读者可以逐步反复的琢磨和实践。元类的定义:元类通常继承自 类,因为 是 Python 中内置的元类,用于创建所有的类。可以通过在类定义中使用 关键字指定元类。示例中,元类的成员,与普通类中的类似,用于存储类的属性,表示给类添加了属性。 元类可以在类创建时添加、修改或删除类的属性和方法。在需要为多个类添加相同的属性或方法时非常有用。读者可能产生疑惑,继承不是也可以给多个类添加相同的属性或方法?使用元类的差别是,元类给多个类添加相同的属性或方原创 2025-01-11 13:00:49 · 682 阅读 · 0 评论 -
Python自学 - 类进阶(可调用对象)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!在GUI编程中,界面元素的事件处理,往往都由需要一个函数来处理,这个函数一般就是回调函数。函数,他们的参数需要输入一个函数,迭代器中的成员逐个让这个函数来处理,这里的。方法的对象可以像函数一样调用,用于定制对象的行为,实现。示例2:由可调用的类对象来替换函数式编程中的函数。,因此,不难理解,最基础的可调用对象就是。方法的对象是可调用对象,可以使用。就是回调函数赋值,注意。原创 2025-01-10 22:01:48 · 357 阅读 · 0 评论 -
Python自学 - 类进阶(构造函数与单例)
作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!一种典型的场景是配置文件的处理,如果允许多个对象,可能存在多个对象对配置文件的修改,这会导致一致性问题,甚至程序出错。这个行为有点反直觉, 我们定义类不就是用来生成很多对象,最大限度的实现复用的吗?是一个对象,并且两个对象中的属性值以最后创建的时候为准。,即在类创建后第一件要做的事,比如:定义类的属性,对类创建时的参数不做限制,然后将生成的对象会传给。原创 2025-01-10 18:41:49 · 723 阅读 · 0 评论 -
Python自学知识清单(持续更新中...)
Python自学知识清单 第一章:数据结构 Python自学 - 变量及对象 Python自学 - 函数的使用 Python自学 - 进制转换 Python自学 - 字符串转义、查找及切片 Python自学 - 字符串处理函数 Python自学 - 字符串格式化输出详解 Python自学 - 列表的用法 Python自学 - 元组的用法 Python自学 - 字典的用法 Python自学 - 集合的用原创 2025-01-10 14:00:59 · 341 阅读 · 0 评论 -
Python自学 - 类进阶(让类像列表和字典那样工作)
可能有读者会好奇,我自己创建的类, 能否像列表和字典那样工作呢?比如:前文中定义的Human类,能不能使用下面的语句来设置属性呢?原创 2025-01-10 13:12:33 · 297 阅读 · 0 评论 -
Python自学 - 类进阶:操控属性(改变属性的行为)
对象的属性支持增加、修改、删除、查询,同时,遇到访问不存在的属性时,还会抛出异常。如果你给自己的类定义的个特殊行为,当属性不存在时,返回None, 而不是抛出异常导致程序中止。原创 2025-01-09 20:34:47 · 426 阅读 · 0 评论 -
Python自学 - 类进阶(运算符:实现“人 + 人”)
前一章我们已经学过了类的表示形式,它告诉我们怎么定义类的输出。 我们再提出一个问题,整型数有、、、等运算,整型数是一个对象,我们自己定义的类创建的也是对象,那我们的对象能不能也拥有这些运算能力呢?比如: 会是什么? 定义运算符,通过实现来完成,由于不是一个合法的标识符,所以定义成员方法时要通过映射一个符合规范的名字,而这个翻译规则是有强制规定的,不是随便拿个名字就能映射到运算符。 上面的示例中,我们定义了这样一个运算,在类的成员方法中返回了一个类的对象。 参考前面的运算符的示例,读者还可以原创 2025-01-09 10:48:58 · 447 阅读 · 0 评论 -
Python自学 - 类进阶(表示形式)
print()>>> h那怎么定义交互式命令行下的输出呢?self . age = age def __str__(self) : return f'姓名: {self . name } , 年龄: {self . age } ' def __repr__(self) : return f'姓名: {self . name } , 年龄: {self . age = age def __str__(self) : return f'姓名: {self . name } , 年龄: {原创 2025-01-08 21:30:18 · 329 阅读 · 0 评论 -
Python自学 - 命名空间
命名空间是 Python 中管理名称和对象映射的机制。有内置全局和局部命名空间三种主要类型。查找遵循LEGB(Local, Enclosure, Global, Built-in)规则,有助于避免名称冲突和组织代码。通过合理使用命名空间,可以使 Python 代码更加清晰、易于维护,同时也可以利用其特性解决复杂的编程问题。作者声明:本文用于记录和分享作者的学习心得,部分内容或示例来源豆包AI,由于本人水平有限,难免存在表达错误,欢迎交流和指教!原创 2025-01-08 09:52:56 · 553 阅读 · 0 评论 -
Python自学 - property装饰器(方法变成属性)
property:将方法转换为只读属性。:为属性添加可写功能,并添加验证或修改逻辑。:为属性添加删除逻辑。避免在@property方法中进行复杂计算,因为它可能会被频繁调用,影响性能。对于需要频繁修改的属性,要谨慎使用property装饰器,因为它可能会使代码难以理解。作者声明:本文用于记录和分享作者的学习心得,部分内容或示例来源豆包AI,由于本人水平有限,难免存在表达错误,欢迎交流和指教!原创 2025-01-07 18:58:46 · 737 阅读 · 0 评论 -
Python自学 - 封装与私有化
不管是加。原创 2025-01-07 17:36:53 · 556 阅读 · 0 评论 -
Python自学 - 多态
pass注:定义抽象类时,需要导入abc模块,在类的声明中,需要明确说明基类继承自ABC类,在抽象方法前添加。原创 2025-01-07 09:39:49 · 276 阅读 · 0 评论 -
Python自学 - 类的继承(别让“鸭嘴兽”飞起来!)
钻石继承也叫菱形继承@startuml@enduml图中Derived类继承自Middle1和Middle2两个中间类,而这两个中间类又都继承自基类Base,继承关系像一个钻石或菱形,因此而得名。钻石继承的危害是中间类如果都对基类的属性进行了修改,那结果可能是不可预期的,代码的逻辑会变得很乱和难以理解,比如:如果上图中的将基类属性x设置为1,而将基类属性x设置为了2,那Derived对象创建时,很难预期属性x到底是1还是2。产生这个困扰的原因是这里的方法解析顺序(MRO)产生歧义。原创 2025-01-06 19:11:45 · 697 阅读 · 0 评论 -
Python自学 - 类的方法(类方法、实例方法、静态方法)
所谓的方法,其实就是在类中定义的函数,区别于游离函数,方法需要通过对象或类来引用。原创 2025-01-05 21:01:37 · 490 阅读 · 0 评论 -
Python自学 - 类(类的定义、属性)
Python支持面向对象编程,对象是一个具有自己状态、行为和唯一标识数据结构。一种朴素的理解是,面向过程编程,更像是集体大锅饭,而面向对象则像是包干到户。面向过程编程,好比集体里定义的资源和生产(生活)方法,都可以随意调用,自由度充分,但可能不够严谨。面向对象编程,每种类型的对象有什么功能,在对象的定义时就已经确定。原创 2025-01-05 17:36:01 · 956 阅读 · 0 评论 -
Python自学 - 递归函数
递归函数是一种在函数体内调用自己的函数,就像“左脚踩着右脚,再右脚踩着左脚…递归函数虽然不能上天,但在处理某些场景时非常好用, 一种典型的场景就是遍历目录。递归还有一个很典型的场景就是遍历目录,列出所有子文件夹中的文件及目录,关于这块的代码,读者可以在网上搜索,有大量现成的代码可供参考。作者声明:本文用于记录和分享作者的学习心得,水平有限,难免存在表达错误,欢迎交流和指教!由于递归使用不当时,会产生死循环,为了保护程序不发生死循环,注:如果对递归的最大次数不满意,可以使用。中的内容话,会知道上面。原创 2025-01-04 20:03:52 · 1681 阅读 · 0 评论 -
Python自学 - 函数式编程初步(lambda、map、filter)
本文主要简单讨论下函数式编程,普通业务场景,使用函数式编程的机会并不是很频繁,读者可以了解此类编程场景,以便在遇到相应业务场景时可以快速进入函数式编程领域。原创 2025-01-04 19:04:44 · 310 阅读 · 0 评论 -
Python自学 - 嵌套函数、作用域和装饰器
函数也是一个对象,可以赋值给其他变量或当参数传递。原创 2025-01-03 21:25:11 · 1046 阅读 · 0 评论 -
Python自学 - “解包”基础知识
解包即获取容器对象中的成员,具体是给带“原创 2025-01-03 09:10:01 · 198 阅读 · 0 评论 -
Python自学 - 函数初步(内置函数、模块函数、自定义函数)
def func_name([params]): #可以没有参数干活语句return 返回值 #可以没有返回示例1:返回两数中的较大者import easygui as egflds = ['参数1', '参数2'] #配置界面上显示两个参数defs = ['11', '101'] #两个参数设置默认参数ipt1, ipt2 = [int(x) for x in eg.multenterbox("请输入两数字:", "输入", flds, defs)]原创 2025-01-02 20:43:16 · 786 阅读 · 0 评论 -
Python自学 - while循环语句
while循环和for循环是几乎所有语言中的主要两种循环形式,虽然几近周折后可以用一种表达替换另一种表达,但使用不同的循环表达形式,更能顺应不同的场景,使代码的逻辑更清晰。while。原创 2025-01-02 09:24:52 · 337 阅读 · 0 评论 -
Python自学 - 解析入门(一种特殊循环)
本文介绍解析的基础知识,以便读者对解析有一个基本的理解,解析可以理解为:对方没有说话,默默的丢过来一个压缩包。原创 2025-01-01 20:23:27 · 384 阅读 · 0 评论 -
Python自学 - zip、enumerate函数初探
zip()原创 2025-01-01 13:48:36 · 383 阅读 · 0 评论 -
Python自学 - 循环之for语句
Python中的for循环不同于C/C++风格的for循环,Python中的for循环使用了for...in的形式,有点类似VB的循环, 使用for...in循环的好处是可以省去了定义循环变量和边界判断,避免了越界的风险。原创 2025-01-01 10:09:10 · 223 阅读 · 0 评论 -
Python自学 - 条件语句
注:下面的示例中使用到了easygui库,请在命令行输入进行安装。原创 2025-01-01 09:05:44 · 420 阅读 · 0 评论 -
Python自学 - 赋值、导入、删除等简单语句
多变量赋值变量收集变量名前的符号表示该变量会收集剩余的参数,收集后变量是一个列表,如下所示:交换赋值链式赋值自操作赋值1.2 导入语句导入模块 导入后要使用的方式使用模块中的成员函数、属性导入模块并指定别名 导入时指定别名, 别名一般比较短,方便使用时书写。导入模块中指定成员 这种方式在使用时不需要再输入模块名,直接使用成员名即可。批量导入模块中的成员 使用代码具体的成员名,可以一次将模块中的所有成员导入。1.3 语句删除变量删除变量引用原创 2025-01-01 08:58:38 · 875 阅读 · 0 评论 -
Python自学 - 引用与拷贝探索(防坑关键知识)
读者如果学习过C/C++语言,对引用的概念应该会比较了解,引用本质是将地址共享给另一个变量,两个变量指向同一个内存地址,任何一个变量的修改都会在另一个变量上即时生效(实际都是一个内存)。原创 2024-12-31 14:33:19 · 911 阅读 · 0 评论 -
Python自学 - 集合的用法大全
集合对象可以用于实现一些集合运算,集合的数学性质具有“无序性、互异性、确定性”。集合没有索引,不能通过索引方式取值,也没有键值对,无法通过键名取值。原创 2024-12-31 11:31:50 · 936 阅读 · 0 评论