Python学习系列-Python 内置函数

发布于 2023-12-25 | 作者: 企研数据 | 来源: 知乎 | 转载于: 知乎

1、引言

Python 在内容上大致可以分为三个部分,即核心语言标准库第三方库(“库”又称“模块”或“包”)。截至本期文章,我们的 Python 教学系列文章一直在介绍其中的核心语言部分,它包括数据类型、基本语法、控制结构(分支,循环等)、异常处理、函数、类等等。无论你使用 Python 做什么,这其中的绝大多数内容都是必须要掌握的。

标准库是指 Python 自带的,可以直接调用的所有基础库。这些库涵盖了许多常用的基本功能,例如网络请求、系统交互、正则表达式等等,这些库都经过了严格的测试和验证,保证了稳定性、可靠性和执行效率,能够有效提高开发效率。

第三方库则是 Python 生态中的百宝箱,它是指非 Python 官方所提供的,由组织或个人开发的 Python 库。其中包括非常多有用的工具,我们熟知的机器学习、人工智能方面的工具库,全部来自第三方库。根据 PyPI(Python Package Index)官网的统计,截至2023年2月,第三方库的数量已经超过 33 万个!覆盖了各种不同的领域和应用场景。

本文要介绍的 Python 内置函数属于核心语言的一部分。我们在介绍数据类型、控制结构的文章中已经逐渐学习了 Python 的基本语法,不过还是需要一个时机去学习 Python 中零落无序的内置函数,这就是本期文章的目的。Python 官方提供了 68 个内置函数,这些内置函数主要提供简单且基础的功能,实用性高。需要提醒的是,我们在使用自定义函数时,应该尽量避免函数名与内置函数的名称一样,否则有可能导致程序异常。下面我们以处理数据为目的,分类别向大家介绍 Python 中常用的内置函数。

 

2、数学运算类函数

数据研究中常常需要计算一些指标或系数,尽管可以用现成的模块直接计算,不过当需要根据实际情况改变某些变量时,还是需要我们自己根据公式计算。这就需要一些数学运算类的函数。

Python 提供了 4 个数学运算类的内置函数,如下表所示。

看完上表你可能会问,为什么 Python 中只有这 4 个数学类的内置函数,应该不够用吧?当然不够用啊!仅仅凭这四个函数显然是不足以满足使用需求的,不过实际上 Python 中有非常多的数据运算类函数,只是这些函数都被封装在标准库math,散落在外的其它函数只有上表中的几个。当需要使用其他数学函数时,可以导入 math库进行使用。

 

3、数据类型类函数

我们在介绍 Python 基础数据类型和组合数据类型的时候,已经向大家介绍了基本的与数据类型相关的函数(相关文章的链接已经放在文末)。这里我们再来回顾总结一下这些函数,并且认识几个新的函数。Python 中常用的与数据类型相关的内置函数如下表所示。

上表中的 zip()enumerate()eval() 是在数据处理中经常使用的函数;bool() 是不太容易理解的一个函数。这些函数我们已经在 Python 教学系列文章中介绍过,有的还是配合数据处理案例介绍的。如果你想再回顾一下这些知识点,可以根据下面的线索进行查找。

 

4、统计类函数

Python 中常用的统计类内置函数如下表所示。

上表中的统计类函数,常常在处理数据表时发挥作用。例如使用 all(x)any(x) 可以判断一个字段是否存在缺失值,或一个字段是否全是空值;使用 max(x)/min(x)可以查看字段中的极值。

 

5、帮助类函数

当我们想要学习 Python 中某个函数的用法、参数;想要了解某个对象的属性;或者准备学习一个新的第三方库时,可以直接使用 Python 内置的帮助类函数,他们能帮你快速了解相关信息(不同版本的 Python 或第三方库,给出的帮助文档可能不一致)。Python 中常用的帮助类内置函数如下表所示。

我们使用上表中的help(func)查看数据处理模块 pandas 中 DataFrame 对象的 explode 函数的帮助文档,得到如下图所示结果。

我们可以通过官方帮助文档快速了解这个函数的用法、参数和使用示例。不过所有的内置函数、标准库以及第三方库的帮助文档都是使用英文书写的,这是 Python 社区的规定。

 

6、文件读写类函数

Python 内置函数中包含了读写文本文件的相关函数,如下表所示。

内置函数 功能描述
open() 用于打开文件并返回一个文件对象,可指定文件路径、打开模式、文件编码等参数。

当需要处理一些文本文件进行一些文本分析时,例如公司年报;或者需要存储一些对照关系时,就可以使用open()函数来打开,或者创建、追加、修改或读取文本文件。例如,我们需要将《2017 国民经济行业分类》中的行业名称与行业代码的对照写入一个json文件,方便以后读取使用。这时就可以使用open()函数和标准库 json。下面是操作的过程和方法。

《2017 国民经济行业分类》:

首先处理 《2017 国民经济行业分类》,生成如下图所示对照字典。

随后使用open()函数创建一个文本对象 File,最后使用json库将上述字典写入文件。

# 导入标准库 json
import json 
# 使用 open() 函数创建目标文件,采用可显示中文的编码
with open("Industry_comparison.json", mode='w', encoding='utf-8-sig') as File:
    # 使用 json 库将字典写入 json 文件。(实际上 json 文件也是一种文本文件)
    # 变量 Target_dict 就是上图中字典
    json.dump(Target_dict, File, ensure_ascii=False, indent=4)

最后写入的 json 文件如下图所示。写入文件后当我们需要再次使用这个对照关系时,直接读取写入的文件就可以了。

上述代码中我们指定 open()函数的mode参数为'w',表示以写入(write)模式打开文件。mode参数的可用参数值和含义如下表所示。

我们也可以使用前面提到的帮助函数help()来查看open()函数的文档,结果如下。

help(open) # open 后面不需要加括号

 

7、其他内置函数

除了上面介绍的一些方便分类的内置函数,还有其他一些比较常用的内置函数,如下表所示。

Python 共有 68 个内置函数,没有在上文中出现过的那些不常用内置函数如下表所示。

 

8、结束语

Python 的学习是有选择性的。本文以数据处理为目的,着重向大家介绍了一些数据处理过程中使用频繁或功能强大的内置函数。后续的文章中,我们将向大家介绍数据处理需要学习的标准库和第三方库