自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Python热爱者的博客

人生苦短,我用Python

  • 博客(2934)
  • 收藏
  • 关注

转载 100道Python面试题总结

面试题第1题:1行代码实现1到100的和?第2题:如何使用Python输出一个[斐波那契数列]Fibonacci第3题:列出几个python标准库第4题:下面Python代码的运行结果是?第5题:python实现列表去重的方法?第6题:在Python中读取大文件第7题:如何避免转义,给字符串加哪个字母表示原始字符串?第8题:python中断言方法举例?第9题:列出python中可变数据类型和不可变数据类型,并简述原理第10题:你如何管理不同版本的代码?第11题:python中生成随机整数、随机小数、0~1之

2021-04-12 16:53:36 7334 1

原创 python打包成.exe程序的三种方式

这里以打包一个简单fastapi服务为例子。这里以打包一个简单fastapi服务为例子。这里以打包一个简单fastapi服务为例子。可以通过可视化界面进行混淆打包。foo.spec添加。构建setup.py。

2024-10-24 21:06:21 263

原创 Python魔法函数__iter__的用法

下面是找到的一个比较好的科学解释:Python中可迭代对象(Iterable)并不是指某种具体的数据类型,它是指存储了元素的一个容器对象,且容器中的元素可以通过方法或方法访问。1.__iter__方法的作用是让对象可以用for … in obj循环遍历,方法是让对象可以通过实例名[index]的方式访问实例中的元素。这两个方法的目的是Python实现一个通用的外部可以访问可迭代对象内部数据的接口。一个可迭代对象是不能独立进行迭代的,Python中,迭代是通过for … in obj来完成的。

2024-10-16 14:13:33 502

原创 Python中json文件和jsonl文件的区别

每行都是一个有效的 JSON 对象,和json的"list dict"不一样,jsonl的话没有"list",只有一行行的“dict”,使用换行符分隔。这样的好处是方便一行行读取,而不用像json一样只能一次性把"list"里面的"dict”全部都读出来,节省了内存吧,并且还能增加可读性,普通的json文件打开之后会乱糟糟一团。它是一种结构化的文本格式,使用键值对的方式表示数据。这么对比下来,JSON 文件更适合结构化的数据存储和传输,而 JSONL 文件更适合每行为独立记录的数据存储和处理。

2024-10-15 16:47:10 237

原创 python修改字符串值的几种方法

在python中,字符串对象是不可变类型,所以我们没办法直接向其他语言一样直接修改其中的某一位字符,所以本质上来说改变一个字符串的元素就是创建了一个新的字符串。上面的几种方法都可以达到一种修改字符串的效果,但是我们在真正使用的时候可能需要将这几种方法进行结合达到我们想要的效果。首先将字符串转换成列表对象,然后根据列表的性质进行修改,最后利用join函数再创建修改后的字符串。

2024-10-12 15:53:15 230

原创 python教程:偏函数

所以,简单总结,functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单。当函数的参数个数太多,需要简化时,使用functools.partial可以创建一个新的函数,这个新函数可以固定住原函数的部分参数,从而在调用时更简单。Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)。最后,创建偏函数时,实际上可以接收函数对象、*args和**kw这3个参数,

2024-10-11 16:38:20 296

原创 python协程中async await用法

上面的代码定义了一个协程函数 my_coroutine(),它在开始时打印一条消息,等待 1 秒钟,然后打印另一条消息。我们使用 asyncio.sleep() 函数来模拟延迟。

2024-09-25 16:19:48 480

原创 Python读写INI文件

ini文件即Initialization File初始化文件,在应用程序及框架中常作为配置文件使用,是一种静态纯文本文件,使用记事本即可编辑。配置文件的主要功能就是存储一批变量和变量值,在ini文件中使用[章(Section)]对变量进行了分组,基本格式如下。以上文件中,有3个Section段,分别user、mysql和log。使用配置文件的好处在于,不用修改代码文件就可以更改使用的用户、数据库以及日志的配置,避免修改代码带来新的bug,或需要重新打包(如Java项目中)。ini文件中使用#或者;

2024-09-03 18:57:03 1205

原创 Python使用zipfile模块压缩和解压缩文件及目录

处理MacOS系统压缩目录生成的__MACOSX目录。

2024-08-28 15:21:50 225

原创 如何理解Python函数中的递归?

无限循环不是我们的目的,所以我们在递归中要设计递归出口以及使执行趋向递归出口。例如求n的阶乘,已知1的阶乘是1,之后n的阶乘是上一个数的阶乘 * 当前数,即。即Python解释器中设置有最大递归次数来防止递归形成的无限循环。此时无聊运行a()或者c()都会抛出达到最大递归深度异常。递归是一种直接或间接调用自己的函数。递归常用于使用倒推的方式来简化问题。

2024-08-23 18:58:59 239

原创 Python序列排序

姓名是字符串,不能在字符串前面用“符号(-)”来排序,可以重写“富比较”方法。

2024-08-15 14:52:39 234

原创 python连接数据库操作入门教程

pymssql和pyodbc模块都是常用的用于SQL Server、MySQL等数据库的连接及操作的模块,当然一些其他的模块也可以进行相应的操作,类似adodbapi、mssql、mxODBC等,我们在实际用的时候选择其中一个模块就好,对于每一个模块都有相应的支持版本和支持平台,大家可以自行查阅文档https://wiki.python.org/moin/SQL%20Server。就是 with语句,即上下文管理器,它的好处一个是代码的集成度高,一个是省去显示的调用close方法关闭连接和游标。

2024-08-10 16:57:19 780

原创 Python如何快速的判断迭代器

迭代器是什么呢?简单来说,迭代器是一种对象,它支持在序列上遍历元素,直到没有元素为止。__iter__()和__next__()。前者返回迭代器对象本身,后者返回序列的下一个值。说白了,就是一个能不断给你下一个值的家伙,直到没东西给你了。else:# 使用迭代器print(item) # 输出:1 2 3 4在这个例子中,我们创建了一个简单的迭代器类MyIterator,它能够遍历给定的数据序列。通过实现__iter__()和__next__()方法,这个类就可以被用在for循环中。

2024-08-07 16:19:14 352

原创 Python中数据的多种存储形式

MongoDB 是由 C++ 语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似 JSON 对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。在这一节中,我们就来看看 Python 3 下 MongoDB 的存储操作。安装地址参考:https://www.runoob.com/mongodb/mongodb-linux-install.html。

2024-08-06 16:43:20 864

原创 20个案例,让你熟悉Python格式化字符串 f-string的用法

在本文中,我将向你展示我认为对 Python 格式化字符串 f-string 来说最重要的一些技巧。你会通过各种样例学到多种格式化字符串的方法。总的来说,就是你会看到20个关于如何完美应用 f-string 的例子。

2024-08-05 15:03:46 1165

原创 Python装饰器四种实现方式

函数装饰器就是一个特殊的函数,该函数的参数就是一个函数,在装饰器函数内重新定义一个新的函数,并且在其中执行某些功能前后或中间来使用被装饰的函数,最后返回这个新定义的函数。装饰器也可以称为函数的包装器,实际上就是在被装饰的函数执行前或后增加一些单独的逻辑代码,以使得被装饰函数执行后最终的结果受到装饰函数逻辑的影响以改变或限定被装饰函数的执行结果。@decoratorName def originalFunction( * args , ** kwargvs) : 函数体。

2024-08-03 15:32:36 1120

原创 python列表中删除重复元素的三种方法

方法1,逻辑复杂,临时变量保存值消耗内存,返回结果破坏了原列表顺序,效率最差。方法2,直接调用append方法原处修改列表,逻辑清晰,效率次之。方法3,极度简洁,使用python原生方法效率最高。给定一个列表,要求删除列表中重复元素。

2024-07-30 14:43:57 261

原创 Python中创建对象的七种方式

传统方式构建,将类对象当成构造器使用。把类名当成参数,使用eval()函数。创建,使用新参数创建对象。使用getattr函数。使用globals函数。使用自定义函数创建对象。

2024-07-29 14:29:17 420

原创 Python必会技能:http请求库

requests 模块是 python 基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。Requests 的哲学是以 PEP 20 的习语为中心开发的,所以它比 urllib 更加 Pythoner。

2024-07-27 16:16:11 1132

原创 python为什么要使用闭包

闭包避免了使用全局变量,此外,闭包允许将函数与其所操作的某些数据(环境)关连起来。这一点与面向对象编程是非常类似的,在面对象编程中,对象允许我们将某些数据(对象的属性)与一个或者多个方法相关联。属性,如果这个函数是一个闭包的话,那么它返回的是一个由 cell 对象 组成的元组对象。cell 对象的cell_contents 属性就是闭包中的自由变量。这解释了为什么局部变量脱离函数之后,还可以在函数之外被访问的原因的,因为它存储在了闭包的。一般来说,当对象中只有一个方法时,这时使用闭包是更好的选择。

2024-07-26 16:36:30 156

原创 Python定义空函数的6种方法

3.return 用于退出函数,向调用方返回一个表达式 默认返回None。2.pass 占据位置,让代码整体完整,不影响后续代码执行。PS:当return用于try中时,后面语句还会被执行。4.Ellipsis 代表“省略” 不影响后续代码执行。

2024-07-25 16:47:07 228

原创 Python中几种常见数据结构的相互转换教程

上面直接使用 str(),是将整个列表转换为字符串,如果我们不想改变列表的类型,只是要将列表中所有元素转为字符串,那么可以借助列表推导式来实现。我们发现,Python中已经有了内置函数 eval(),但现在却又出现个类似的 ast.literal_eval() 方法,二者的区别是什么呢?需要注意的是,按 json 的标准规范是使用双引号 “”,因此在转换之后得到的json字符串是双引号的。因此,相比 eval() 函数, ast.literal_eval() 更加安全,更被 推荐使用。

2024-07-24 22:03:17 278

原创 Python在不同对象中使用 in 操作符的查找效率

通过上面的测试,我们可以看到,总体来说,list、tuple它们使用 in 操作符的查找效率相差不多,set、dict它们使用 in 操作符的查找效率相差不多,但随着查找数据量的增大,list、tuple的处理效率变得越来越慢,而set、dict的处理效率,将远远优于list及tuple。在Python中 in 操作符可以用于判断某个元素是否存在于当前对象中,而对于不同的Python对象,使用 in 操作符的处理效率是不一样的。

2024-07-23 15:53:21 238

原创 Python实现数值交换的几种方式

我们也可以借助列表,右边放一个由 b 和 a 组成的列表来实现,但注意右边不能放一个集合中,因为集合是无序的,会导致最终交换结果不对。异或运算的特点:0异或任一个数a,其结果为 a;任一数a异或自己,也就是 a异或a,其结果为 0。同时异或运算满足交换律。

2024-07-22 15:57:46 453

原创 python库fire使用教程

目前python命令行解析库用过的有:argparse(python自带)、click(Flask作者写的)但二者相比fire这个库,用起来都不够 “简单”,fire一行代码能把函数导出到命令行窗口。argparse用法示例# 初始化解析器# 定义参数parser.add_argument("-f", "--file", help="统计指定文件类型")# 解析click用法示例@click.option("-f", "--file", help="统计制定文件类型")

2024-07-20 14:56:04 298

原创 Python中Nan||None||NaT||Null的区别

None是一个python特殊的数据类型;None不同于空列表和空字符串、空列表[ ]、空Series、空Dataframe,而是一个特殊的值,表示什么也没有,是一种单独的格式。: 在Python中没有这个NULL,NULL主要是在C语言中,在Python中对应的就是None;: NaN是numpy\pandas下的,不是Python原生的,Not a Number的简称。对整体的series或Dataframe判断是否未空,用isnull()对单独的某个值判断,可以用 np.isnan()

2024-07-19 14:29:30 218

原创 Python实现阶乘的几种写法

阶乘–>>数学用n!= n*(n-1)(n-2)(n-3)321,0的阶乘也是1,本人无法演绎,只能简单的从1开始。

2024-07-18 16:06:44 493

原创 Python字符串匹配的6种方法

PS:Python字符串匹配及正则表达式说明。

2024-07-17 15:15:16 1593

原创 Python复制文件的9个方法

Python 中有许多“开盖即食”的模块(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在这篇文章中,你将会看到一些用 Python 实现文件复制的特殊方法。下面我们开始学习这九种不同的方法来实现 Python 复制文件操作。在开始之前,你必须明白为什么了解最适合你的 Python 复制文件方法是如此重要。这是因为文件 I/O 操作属于性能密集型而且经常会达到瓶颈。这就是为什么你应该根据你的应用程序的设计选择最好的方法。

2024-07-16 14:56:53 1592

原创 python输出一个列表的4种方法!(print/list/dict/zip)

题目:输出《红楼梦》中的金陵十二钗前5位共有四种方法,分别是print直接输出、通过List列表输出、通过字典输出和通过zip方式输出注,列表的序列图标是符号大全http://www.fhdq.net/index.html复制的。

2024-07-15 16:07:06 1179

原创 Python实现字符串反转的9种方法

字符串是可切片,切片字符串会以给定的增量从字符串中的一个点(向后或向前)向另一个点提供一个新字符串。python中,字符换是不可变,更改字符串不会修改字符串,而是创建一个新的字符串。样例:如 a=‘123456789’ 反转成 a=‘987654321’

2024-07-13 15:48:51 1367

原创 Python中常用的10个技巧

判断字符串中包含的元素是否相同,无论字符串中元素顺序如何,只要包含相同的元素和数量,就认为其是相同的。利用字符串翻转操作可以查看字符串是否回文。去重操作可以借助 set 来进行。

2024-07-12 19:20:12 226

原创 Python中创建包和增添包的路径(sys.path.append())

python中创建自己的包(package),其实就只需要里创建一个文件夹就可以了。文件夹里不是必须要有是__init__.py这个文件的,不过如果你的文件夹里存在这个__init__.py文件,那么当你在import这个包时python会立刻执行__init__.py里的内容并且只会执行__init__.py。

2024-07-11 15:10:58 1591

原创 Python中字符串与Unicode

在Python读取文件中,最让人头疼的就是对文本文件的读取,因为对文本文件读取涉及到编码。如果一个采用GBK编码的文件,使用UTF-8进行解码,那么得到的字符就会产生乱码,因此作为程序员,我们在开发中理解正在处理的是那种字符串数据非常重要。

2024-07-10 15:36:58 1271

原创 PyCharm编辑器中几个使用技巧

在实际的代码编写中,我们需要定义属于自己的文件头,比如脚本的创建时间、作者、编码等。在PyCharm中,我们可以一键定义,并与之后的脚本都会遵循该文件头的模式。File --> Preferences(Windows系统为:Settings) --> Editor --> File and Code Template --> Python Script,这样我们就可以设置Python脚本的文件头了。

2024-07-08 16:52:22 242

原创 Python自定义模块的使用和注意事项

除了使用系统提供的内置模块以外,我们还能自己写一个模块供自己的程序使用。一个.py文件就是一个模块,所以,自定义模块很简单,基本上相当于创建一个.py文件。但是,需要注意的是,如果一个.py文件要作为一个模块被别的代码使用,这个.py文件的名字一定要遵守标识符的命名规则。

2024-07-06 15:57:51 284

原创 Python闭包和保存自由变量

抽象代数里,一集元素称为在某个运算(操作)之下封闭,如果将该运算应用于这一集合中的元素,产出的仍然是该集合中的元素。注意我们文章中所称的闭包为Python中的闭包,而非抽象代数中的闭包。Python中的闭包是一种特殊的被外层函数包围的内层函数,它能够在外层函数执行完毕后仍然能获取在外层函数范围中、但未绑定到内层函数作用域的自由变量(free variable))。因为对于实例而言,测试话费的大部分时间都在对实例变量的访问上,而闭包要更快一些,因为不用涉及额外的self变量。工作起来很像实例的方法。

2024-07-05 15:48:52 627

原创 Python多进程中并行编程与进程池

Python的并行编程可以采用multiprocessing或mpi4py模块来完成。multiprocessing是Python标准库中的模块,实现了共享内存机制,也就是说,可以让运行在不同处理器核心的进程能读取共享内存。在基于共享内存通信的多进程编程中,常常通过加锁或类似机制来实现互斥。mpi4py库实现了消息传递的编程范式(设计模式)。简单来说,就是进程之间不靠任何共享信息来进行通信(也叫做shared nothing),所有的交流都通过传递信息代替。

2024-07-04 15:37:41 786

原创 Python中key参数的含义及用法

我们在使用 sorted() 或 map() 函数的时候,都会看到里面有一个 key 参数其实这个 key 参数也存在于其他内置函数中(例如 min()、max() 等),那么我们今天就来了解一下 key 参数的含义以及用途吧!

2024-07-02 16:05:27 741

原创 Python调用shell cmd的几种方式

​ 如果返回是str,直接通过read拿结果使用,如果是多行,选择readlines转list获取每行内容。​ 如果返回是str,直接拿结果使用,如果是多行,选择用splitline转list获取。

2024-06-28 19:07:08 227

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除