Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

自定义博客皮肤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

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

转载 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 7252 1

原创 Python读写INI文件

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

2024-09-03 18:57:03 839

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

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

2024-08-28 15:21:50 113

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

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

2024-08-23 18:58:59 199

原创 Python序列排序

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

2024-08-15 14:52:39 204

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

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

2024-08-10 16:57:19 728

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

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

2024-08-07 16:19:14 319

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

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

2024-08-06 16:43:20 728

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

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

2024-08-05 15:03:46 831

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

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

2024-08-03 15:32:36 714

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

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

2024-07-30 14:43:57 122

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

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

2024-07-29 14:29:17 174

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

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

2024-07-27 16:16:11 1054

原创 python为什么要使用闭包

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

2024-07-26 16:36:30 134

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

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

2024-07-25 16:47:07 203

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

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

2024-07-24 22:03:17 253

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

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

2024-07-23 15:53:21 203

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

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

2024-07-22 15:57:46 260

原创 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 275

原创 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 163

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

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

2024-07-18 16:06:44 197

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

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

2024-07-17 15:15:16 628

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

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

2024-07-16 14:56:53 1162

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

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

2024-07-15 16:07:06 382

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

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

2024-07-13 15:48:51 282

原创 Python中常用的10个技巧

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

2024-07-12 19:20:12 213

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

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

2024-07-11 15:10:58 1153

原创 Python中字符串与Unicode

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

2024-07-10 15:36:58 1005

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

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

2024-07-08 16:52:22 225

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

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

2024-07-06 15:57:51 259

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

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

2024-07-05 15:48:52 599

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

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

2024-07-04 15:37:41 729

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

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

2024-07-02 16:05:27 677

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

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

2024-06-28 19:07:08 203

原创 python中的Map和Filter

大多数时候,我们使用匿名函数(lambdas)来配合map。map不仅用于⼀列表的输⼊, 我们甚至可以用于列表的函数!大多数时候,我们要把列表中所有元素⼀个个地传递给⼀个函数,并收集输出。这个filter类似于⼀个for循环,但它是⼀个内置函数,并且更快。map会将⼀个函数映射到⼀个输入列表的所有元素上。Map可以让我们用⼀种简单而漂亮得多的方式来实现。

2024-06-27 14:13:17 178

原创 Python中几种lambda排序方法

以元素的第二个元素先升序排列,再以第一个元素升序排列。以元素的第二个元素降序排列,再以第一个元素降序排列。以元素的第二个元素升序排列,再以第一个元素降序排列。若不想更改原有的列表,只需使用sorted即可。以元素的第二个元素升序排列。

2024-06-26 18:55:46 405

原创 Python创建字典与fromkeys的坑

Django, Flask这些Web框架在做前后端分离时, 就是用字典传数据的, 因为它和列表list 配合起来, 能够很好的与json格式的数据相互转化. 用Flask + Echarts做数据可视化大屏, 传的变量都是字典和列表.比如我执行一个sql语句, 返回一个巨大的元组或列表, 而我又暂时不确定它的值是什么, 就可以这样批量创建, 值先为None, 或者随便赋一个值。wc***, fromkeys你不讲码德, 我只是修改了键为1的值, 怎么全都修改了!Python提供了许多快速创建字典的方式,

2024-06-25 16:10:11 195

原创 Python 判断质数的另一种方法

仔细想一想,其实这两个方法是一样的,第一块代码的range范围是包含[2,3,5,7]的,甚至可以再精细一点,比如当n=8的时候,第一块代码的范围区间是[2,3],这样就避免了后面5和7的无谓的计算。质数就是大于等于2且只能被它本身及1整除的数,百度上关于质数的性质和相关的公式还有很多,不过有点高深难懂,尤其是对我这个数学不好的人来说。有一组数是很神奇的:[2,3,5,7]。所以,只要被求的数不能被这组数中的每一个数整除,此数就为质数。比如8=2×2×2, 6=2×3, 14=2×7…

2024-06-21 15:16:39 210

原创 Python教程:异常捕捉与代码重构

如果你未对异常进行处理,程序停止,并显示一个traceback,其中包含有关异常的报告。当我们认为可能发生错误时,可编写一个try-except代码块来处理可能引发的异常,让你的python尝试运行一些代码,并告诉它这些代码指定的异常,改怎么办?比如说,要求用户输入的程序中,如果程序能够有效处理无效输入,而不至于崩溃。有时候我们有这样的需求:代码能够正常的运行,那可做进一步的修改——将代码划分为一系列完成具体工作的函数。这样的过程被称为重构。为此,我们首先将获取存储的用户名的代码移植到另一个函数中。

2024-06-13 15:47:37 284

原创 Python定义可变参数与list切片

print argsPython解释器会把传入的一组参数组装成一个tuple传递给可变参数,因此,在函数内部,直接把变量 args看成一个 tuple 就好了。

2024-06-11 16:02:43 139

空空如也

空空如也

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

TA关注的人

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