Python 中的 head 和 tail 函数

2024 年 8 月 29 日 | 4 分钟阅读

在 Python 中,head() 函数通常用于从列表或 DataFrame 中检索前 n 个元素。

列表的 head() 函数

在 Python 中,您可以使用 head() 函数处理列表,以检索列表中的前 n 个元素。head() 函数在 Python 中不是内置函数,但您可以轻松创建自己的函数来实现相同的功能。示例如下:

此函数接受列表 lst 和整数 n 作为输入,并返回列表中的前 n 个元素。示例用法如下:

DataFrame 的 head() 函数

在 Python 中,您还可以使用 pandas DataFrame 的 head() 函数来检索 DataFrame 的前 n 行。head() 函数是 pandas 库中的一个内置函数,因此您无需创建自己的函数。示例如下:

输出

name  age
0     Alice   25
1       Bob   30
2  Charlie   35

在此示例中,我们创建了一个具有两列(nameage)和五行的 DataFrame。之后,我们使用 head() 函数检索了 DataFrame 的前三行。

在 Python 中,tail 函数用于从序列(如列表或字符串)的末尾提取指定数量的元素。生成的序列仅包含原始序列末尾的元素,最多为指定数量的元素。

以下是在 Python 列表上使用 tail 函数的示例:

输出

[3, 4, 5]

在此示例中,tail 函数接受两个参数:seqnseq 是我们要从中提取末尾元素的序列(在此例中为列表),而 n 是我们要提取的元素数量

之后,该函数使用 Python 的切片语法提取序列的最后 n 个元素。-n: 表示法的意思是“取最后 n 个元素”,因此 seq[-n:] 返回一个新列表,其中仅包含 my_list 的最后三个元素。

请注意,原始列表 my_list 不会被 tail 函数修改。相反,该函数返回一个新列表,其中仅包含原始列表末尾的指定数量的元素。

此 tail 函数可以用于多种方式:

例如,当我们想从字符串末尾提取 N 个字符时,可以按如下方式实现:

输出

world!

在此示例中,tail(my_string, 6) 返回字符串的最后六个字符,即 "world!".

示例 2:从文件中提取最后 N 行

假设您有一个文本文件,并想从中提取最后 n 行。您可以将 tail 函数与 Python 的内置 open 函数结合使用来读取文件并提取最后 n 行:

输出

['Line 6\n', 'Line 7\n', 'Line 8\n', 'Line 9\n', 'Line 10\n']

在此示例中,tail(file_path, 5) 读取指定路径的文件,并返回文件的最后五行。

示例 3:将 Tail 与其他函数结合使用

tail 函数可以与其他 Python 函数结合使用以执行更复杂的操作。例如,假设您有一个数字列表,并且您想计算最后 n 个数字的移动平均值。您可以使用 tail 函数以及 Python 的内置 sum 函数来计算最后 n 个数字的总和:

输出

8.0

在此示例中,moving_average(my_list, 3) 使用 tail 函数从列表中提取最后三个数字,然后使用 sum 函数计算它们的平均值。