《Python高手之路》——2.2 标准库

简介:

本节书摘来自异步社区《Python高手之路》一书中的第2章,第2.2节,作者[法]Julien Danjou(朱利安•丹乔), 王飞龙 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.2 标准库

Python本身内置的巨大标准库提供了丰富的工具和功能,可以满足你能想到的任何需求。很多Python的初学者习惯于自己写代码实现一些基本的功能,然后会惊奇地发现很多功能已经内置了,直接就可以使用。

任何时候想要自己写函数处理一些简单的工作时,请停下来先看看标准库。我的建议是至少大概浏览一遍标准库,这样下次再需要一个函数时就能知道是否可以利用标准库中已有的函数了。

后续章节会讨论其中的一些模块,如functools和itertools,下面是一些必须了解的标准库模块。

  • atexit允许注册在程序退出时调用的函数。
  • argparse提供解析命令行参数的函数。
  • bisect为可排序列表提供二分查找算法(参见10.3节)。
  • calendar提供一组与日期相关的函数。
  • codecs提供编解码数据的函数。
  • collections提供一组有用的数据结构。
  • copy提供复制数据的函数。
  • csv提供用于读写CSV文件的函数。
  • datetime提供用于处理日期和时间的类。
  • fnmatch提供用于匹配Unix风格文件名模式的函数。
  • glob提供用于匹配Unix风格路径模式的函数。
  • io提供用于处理I/O流的函数。在Python3中,它还包含StringIO(在Python 2中有同名的模块),可以像处理文件一样处理字符串。
  • json提供用来读写JSON格式数据的函数。
  • logging提供对Python内置的日志功能的访问。
  • multiprocessing可以在应用程序中运行多个子进程,而且提供API让这些子进程看上去像线程一样。
  • operator提供实现基本的Python运算符功能的函数,可以使用这些函数而不是自己写lambda表达式(参见8.3节)。
  • os提供对基本的操作系统函数的访问。
  • random提供生成伪随机数的函数。
  • re提供正则表达式功能。
  • select提供对函数select()和poll()的访问,用于创建事件循环。
  • shutil提供对高级文件处理函数的访问。
  • signal提供用于处理POSIX信号的函数。
  • tempfile提供用于创建临时文件和目录的函数。
  • threading提供对处理高级线程功能的访问。
  • urllib(以及Python 2.x中的urllib2和urlparse)提供处理和解析URL的函数。
  • uuid可以生成全局唯一标识符(Universally Unique Identifiers,UUID)。

这个模块清单可以作为一个快速参考,帮助你了解各个库模块的作用。如果能记住一部分就更好了。花在查找标准库上的时间越少,意味着写实际代码的时间就越多。

提示

  整个标准库都是用Python写的,所以可以直接查看它模块和函数的源代码。有疑问时只需打开代码自己一探究竟。尽管文档中已经包含了你想知道的一切,但总还是有机会让你学一些有用的东西。
相关文章
|
1天前
|
机器学习/深度学习 编解码 算法
常用的Python库介绍
Python作为一种功能强大的编程语言,拥有众多的第三方库和框架,这些库和框架覆盖了从数据处理、网络编程、Web开发到人工智能等多个领域。
28 15
|
2天前
|
分布式计算 大数据 Java
如何使用Python的pyodps库来进行跨项目空间重命名表名?
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
28 12
|
1天前
|
存储 监控 数据可视化
【Bokeh 库】Python 中的动态数据可视化
【7月更文挑战第15天】Python的Bokeh库是用于动态数据可视化的利器,它能创建交互式、现代Web浏览器兼容的图表。安装Bokeh只需`pip install bokeh`。基础概念包括Plot、Glyph、数据源和工具。通过示例展示了如何用Bokeh创建动态折线图,包括添加HoverTool。Bokeh还支持散点图、柱状图,可自定义样式和布局,添加更多交互工具,并能构建交互式应用和实时数据流更新。适用于数据探索和实时监控。
18 5
|
7天前
|
SQL 并行计算 API
Dask是一个用于并行计算的Python库,它提供了类似于Pandas和NumPy的API,但能够在大型数据集上进行并行计算。
Dask是一个用于并行计算的Python库,它提供了类似于Pandas和NumPy的API,但能够在大型数据集上进行并行计算。
|
7天前
|
机器学习/深度学习 人工智能 数据挖掘
Numba是一个Python库,用于对Python代码进行即时(JIT)编译,以便在硬件上高效执行。
Numba是一个Python库,用于对Python代码进行即时(JIT)编译,以便在硬件上高效执行。
|
7天前
|
网络协议 安全 Shell
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
|
7天前
|
机器人 Shell 开发者
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
|
4天前
|
数据采集 搜索推荐 机器人
Python 神器:wxauto 库
Python 神器:wxauto 库
24 1
|
7天前
|
自然语言处理 程序员 编译器
`pylatex`是一个Python库,用于生成LaTeX文档。LaTeX是一种用于高质量排版和打印的文档准备系统,特别适用于科学、技术和数学文档。
`pylatex`是一个Python库,用于生成LaTeX文档。LaTeX是一种用于高质量排版和打印的文档准备系统,特别适用于科学、技术和数学文档。
|
7天前
|
存储 对象存储 Python
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。