0

0

小白必读!十大被低估的Python自带库!

WBOY

WBOY

发布时间:2023-04-12 18:19:05

|

2249人浏览过

|

来源于51CTO.COM

转载

小白必读!十大被低估的Python自带库!

大家在学习python的过程中,都会了解到python的一个强大的功能在于各种强大的第三方库函数,大家只需要通过pip install 即可安装我们需要的库函数。

家往往只是关注自己安装的python库,却忽略了python自带的库函数,或者是python自带的库,今天小编就为大家介绍一下,十大被低估的python自带库或者是python自带的函数。

1.Counter

Counter的主要用途从名字就可以看出,它是用来进行计数统计的,在进行数据分析或者是统计时,我们经常需要用到计数,而Counter会帮助我们写出更加简介的代码,如下图所示。

小白必读!十大被低估的Python自带库!

上述程序中,可以看到,使用Counter可以用简单的两行程序完成字符的统计,并且还可以进行排序输出的操作,大大简化了代码。

2.NamedTuple

nametuple继承了tuple类,使用nametuple可以创建一个类对象,并且该对象拥有可以访问的属性,这有什么用处呢,我们利用下面的程序来讲解。

小白必读!十大被低估的Python自带库!

上述的程序中,注释的第一段程序没有使用nametuple,而当features的特征数量过多时,我们想使用其中的某一个或者某些特征时,我们不容易获得特征的索引,从而带来不必要的麻烦。当我们使用nametuple时,我们可以很轻松的通过特征名称来访问特定的数据的特征。

3.DefaultDict

Defaultdict是具有默认初始值的字典,当我们访问defaultdict的键值不存在时,它会返回默认值,例如下面的程序所示:

小白必读!十大被低估的Python自带库!

程序中,我们创建了一个int类型的defaultdict,当我们想将“python”存储到字典中去时,dict会报错,而defaultdict会有初始化的默认值0,从而让我们轻松的按键值存储数值。这里我们创建的时int类型的defaultdict,所以默认初始值为0,当我们创建list的defaultdict时,默认初始值就是空列表。

4.Glob

Glob模块的用处主要是用来匹配我们指定路径下的文件信息,并以列表的形式返回匹配到的文件绝对路径,如下图所示:

小白必读!十大被低估的Python自带库!

程序中,我们匹配了路径下的所有jpg和png图片,并返回了它们的绝对路径。

5.Math

Math模块是python自带的简单数学函数模块,包括了指数、对数、正弦余弦等函数。

小白必读!十大被低估的Python自带库!

6.Argparse

Argparse模块的使用,一方面可以让我们编写命令行接口,大大美化我们的程序,使我们的程序看起来更加的美观,另一方面也使得我们对于程序的修改也更加的便捷。

Tellers AI
Tellers AI

Tellers是一款自动视频编辑工具,可以将文本、文章或故事转换为视频。

下载

小白必读!十大被低估的Python自带库!

上述程序中,我们定义了两个参数a和b,并规定它们必须要输入,argparse会自动解析我们的输入数据,并转化为指定的类型(int),然后我们主程序的两数相加,并输出结果。在这里我只是为大家简单的展示了argparse的功能,其强大的魅力需要在大量的程序中才能体现出来。

7.Copy

对于copy模块,主要涉及到浅拷贝和深拷贝的内容,这里需要明白浅拷贝和深拷贝的区别,对于深拷贝,无论是对于可变对象还是不可变对象,都是统统的创建一个新的变量,而对于浅拷贝,则较为复杂,如下图所示:

小白必读!十大被低估的Python自带库!

这里我们用程序对上述的图进行解释,如下所示:

小白必读!十大被低估的Python自带库!

如上图所示,对于不可变对象,浅拷贝只是复制了相同的地址给到拷贝对象。但是当我们修改simple_str的值时,copy_simple_str却没有改变,这是因为字符串是不可变类型,所以修改simple_str的值,编译器会开辟新的空间,保存simple_str原先的值,让copy_simple_str指向它。对于复杂的可变类型,从结果可以看出其子对象并没有被完全复制,因此对copy_complex_dict进行修改,同样会修改complex_dict中的子对象。

8.itertools

itertools 模块中包含了许多有用的迭代器函数,熟练的运用它们可以极大的提高工作效率。这里小编简单的举几个itertools使用举例:

小白必读!十大被低估的Python自带库!

上述的程序中,分别利用permutations来生成所有的排列组合,并使用count函数与zip结合生成序列号。需要注意的是这里的permutations和count生成的都是迭代器,从而可以大大的节省内存空间。

9.enum

在python中,enum模块同样实现了对于枚举类型的支持,在枚举集合中,枚举成员应该是唯一的而且是不可变的。

小白必读!十大被低估的Python自带库!

上图中我们定义了一个Week的枚举类,然后通过这个类来计算出今天之后应该是周几。

10.calendar

calendar模块用于处理与日历相关的函数,如我们最常见的判断是否是闰年,calendar只需要一行程序便可以帮助我们完成计算:

小白必读!十大被低估的Python自带库!

上图程序中我们分别利用calendar输出了是否是闰年,以及打印月历,判断星期等,利用calendar可以在处理日历问题上达到事半功倍的效果。

以上10个python模块,是非常有用的python自带模块,但是在大家平时的编程中却较少使用,通过小编的讲解,希望大家能更多的了解python自带的强大模块,在以后的编程中不断的优化自己的程序。

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
云朵浏览器入口合集
云朵浏览器入口合集

本专题整合了云朵浏览器入口合集,阅读专题下面的文章了解更多详细地址。

0

2026.01.20

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

20

2026.01.20

PS使用蒙版相关教程
PS使用蒙版相关教程

本专题整合了ps使用蒙版相关教程,阅读专题下面的文章了解更多详细内容。

62

2026.01.19

java用途介绍
java用途介绍

本专题整合了java用途功能相关介绍,阅读专题下面的文章了解更多详细内容。

87

2026.01.19

java输出数组相关教程
java输出数组相关教程

本专题整合了java输出数组相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.19

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

10

2026.01.19

xml格式相关教程
xml格式相关教程

本专题整合了xml格式相关教程汇总,阅读专题下面的文章了解更多详细内容。

13

2026.01.19

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

19

2026.01.19

微信聊天记录删除恢复导出教程汇总
微信聊天记录删除恢复导出教程汇总

本专题整合了微信聊天记录相关教程大全,阅读专题下面的文章了解更多详细内容。

160

2026.01.18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Git 教程
Git 教程

共21课时 | 2.8万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.2万人学习

Kotlin 教程
Kotlin 教程

共23课时 | 2.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号