Python 常用库

python

Python 常用库

标准库

内置在python中的工具集,提供更加丰富的对象和函数。

Tip
Tip

标准库中的每个模块都是全小写形式。

datetime 模块

获取当前的事件和日期

random 模块

random 生成假随机数字,随机打乱序列并选择随机项

random.sample

从序列或集合中挑选元素,返回一个有 k特异性元素(无放回抽取) 的列表。

python
random.sample(population, k)
  • 从数据集中产生一个新的列表,原始数据集保持不变
  • 列表是有序的数据集,原始数据集可能为无序的,依照被选择的先后次序排序
  • 原始数据集的元素可以非专一性,原始数据集中的每一个元素都是等可能被抽取的
  • 若要快速产生整数,可结合 range() 函数为对象,即 sample(range(num1), k=num2)(⚠️ num2 <= num1
  • sample 的数量比 population 的数量大时,会引起 ValueError

random.randint

函数 random.randint(down_num, up_numn) 接受两个整数,形成一个范围(闭区间),从中随机抽取一个整数

random.choice

函数 random.choice(list) 接受一个列表输入,并从中随机地选择一个项目,从列表中选择任何值的概率是一样的。

计算代码运行时间

timeit 模块

timeit 针对简短的代码

cProfile模块 或 profile 模块

cProfileprofile 针对大型项目

csv 模块

csv 对于读取 csv 文件来说非常便利

collections 模块

collections 常见数据类型的实用扩展,包括

  • OrderedDict
  • defaultdict
  • namedtuple

string 模块

string 关于字符串的更多函数。此模块还包括实用的字母集合,例如 string.digits(包含所有字符都是有效数字的字符串)。

re 模块

re 通过正则表达式在字符串中进行模式匹配

math 模块

math 一些标准数学函数

os 模块

os 操作系统接口模块 与操作系统交互,如读写文件、操作路径等。

  • os.markdir(path) 创建目录,类似于 shell 命令 mkdir
    创建一个名为 path 的目录(文件夹)
  • os.listdir(path='.') 获取目标中的文件名列表,类似于 shell 命令 ls
    返回一个列表,其中包含所输入的路径 path 下所有的文件(条目),按照字母表排序。path 默认值为字符串 . 表示当前目录(而字符串 ..则表示上一级目录)
  • os.rename(src, dst) 移动/更改文件的名称或目录,类似于 shell 命令 mv,但 Python 命令需要在 srcdst指定具体的文件名称
    将文件(夹)名从 源名称 src 重命名为 目标名称 dst(在 dst 中不存在同名的文件)。实际上从操作系统的角度文件名是包括文件所在的整个路径,当 srcdst 含有完整的路径和文件名时,则修改其中的路径(需要预先创建目录)相当于移动文件。
  • os.getcwd() 返回当前目录 working directory
  • os.chdir(path) 改变当前工作目录到 path 路径

os.path

  • os.pathos 的子模块,用于操纵路径名称。
    可自动基于不同系统,使用不同路径规则,如在 Windows 系统中其路径中的目录和文件名之间用 反斜杠 \ 分隔,而反斜杠 \ 正好是 Python 的转义符,使用 os.path.join("dir", "file_name") 来合成路径名,Python 会自动在反斜杠前都添加转义符,即以 \\ 形式表示 Windows 下的路径。使编写关于系统路径的代码可以在不同的操作系统上运行,即为编写可移植代码。
  • os.path.join("dir", "dir2", "dir3", "file_name") 基于不同操作系统选择不同的连接符,合理地拼接一个或多个路径部分。
    将字符串附加到一起形成路径名,在 Windows 系统使用 \ 连接字符串,同时在所有的反斜杠前都添加转义符 \ 即最后的形式为为 dir\\dir1\\dir2\\dir3\\file_name,在 Mac 或 Linux 系统使用 / 连接字符串为 dir/file_name。注意如果含文件名,需要包括后缀。

sys 模块

sys 直接使用 Python 解释器

json 模块

json 适用于读写 json 文件(面向网络开发)

第三方库

独立开发者编写了成千上万的第三方库,使用 pip 安装这些库。pip 是在 Python 3 中包含的标准软件包管理器,但并不是唯一的管理器(anaconda 则是专门针对数据科学的软件管理器)

python
pip install package_name

该命令会下载并安装指定的软件包,然后可以用从标准库中导入模块时相同语法导入第三方软件包。

requirements.txt 文件

大型 Python 程序可能依赖于十几个第三方软件。为了方便分享在 requirements.txt 的文件中列出项目的依赖项。

requirments.txt
txt
beautifulsoup4==4.5.1
bs4==0.0.1
pytz==2016.7
requests==2.11.1
  • 该文件的每行包含软件包名称版本号
  • 版本号是可选项,但是通常都会包含(不同版本的库之间可能变化不大,可能截然不同,因此有必要使用程序作者在写程序时用到的库版本)

使用 pip 一次性安装项目的所有依赖项

python
pip install -r requirements.txt

IPython

IPython 更好的交互式 Python 解释器

requests

requests 提供易于使用的方法来发出网络请求。适用于访问网络 API。

Flask

Flask 一个小型框架,用于构建网络应用和 API。

Django

Django 一个功能更丰富的网络应用构建框架。Django 尤其适合设计复杂、内容丰富的网络应用。

Beautiful Soup

Beautiful Soup 用于解析 HTML 并从中提取信息。适合网页数据抽取。

pytest

pytest 扩展了 Python 的内置断言,并且是最具单元性的模块。

PyYAML

PyYAML 用于读写 YAML 文件。

NumPy

NumPy 用于使用 Python 进行科学计算的最基本软件包。它包含一个强大的 N 维数组对象和实用的线性代数功能等。

pandas

pandas 包含高性能、数据结构和数据分析工具的库。尤其是,pandas提供dataframe

matplotlib

matplotlib 二维绘制库,会生成达到发布标准的高品质图片,并且采用各种硬拷贝格式和交互式环境。

ggplot

ggplot 另一种二维绘制库,基于 R's ggplot2库。

Pillow

Pillow Python 图片库可以向你的 Python 解释器添加图片处理功能。

pyglet

pyglet 专门面向游戏开发的跨平台应用框架。

Pygame

Pygame 用于编写游戏的一系列 Python 模块。

pytz

pytz Python 的世界时区定义。


Copyright © 2025 Ben

Theme BlogiNote

Icons from Icônes