如何在 Python 中将文件分割成列表?


Python 是一种复杂的多用途编程语言,已成为许多领域的通用语言,尤其是在分析、Web 开发、自动化等领域。其固有的易用性和适应性使其成为初学者和经验丰富的程序员的首选。Python 的一项无与伦比的优势是它能够操作文件,允许用户轻松地读取、编写、编辑和组织文件。在本讨论中,我们将探讨其中一个方面:将文件分解成数组。

理解 Python 中的文件和数组

在 Python 领域,文件表示存储介质上的特定位置,其中包含相关数据。它作为一种在非易失性存储器(如硬盘)中永久存储数据的方式。Python 支持多种文件格式,包括文本文件(.txt)、PDF 文件(.pdf)、CSV 文件(.csv)等。

相反,数组构成了 Python 的内置数据结构之一。它可以容纳各种元素,包括数字、字符串,甚至其他数组。数组是可变的,这意味着它们可以在创建后进行修改。

为什么要将文件分解成数组?

将文件分割成数组是一项常见操作,尤其是在数据分析任务中。此操作使程序员能够单独处理文件的每一行或每个元素,这在执行数据探索、机器学习任务或仅管理文本数据时至关重要。

使用 Python 将文件分解成数组

Python 使将文件分割成数组的任务变得非常简单。让我们逐步遍历此过程,使用文本文件作为示例。

  • 访问文件

  • 首先,您应该访问文件。Python 提供了一个名为 open() 的内置函数,它以文件名和模式作为参数。模式是一个字符串,指定如何访问文件 -

"r" - 读取模式(默认)

"w" - 写入模式

"a" - 追加模式

"x" - 创建模式,它将创建一个文件,如果文件已存在则引发错误

"t" - 文本模式(默认)

"b" - 二进制模式

使用以下语句访问文件

document = open("mydocument.txt", "r")
  • 解释文件

访问文件后,您可以使用 read() 函数解释其内容。此函数将文件的内容解释为单个大型字符串。

content = document.read()
  • 将文件内容分解成数组

接下来,我们的目标是将文件的内容分解成数组。split() 函数是一个 Python 字符串方法,它将字符串分解成一个数组,其中每个单词都成为数组项。默认情况下,它在每个空格处进行分割。但是,如果您打算在每个换行符处进行分割,则可以将“\n”作为分隔符传递。

rows = content.split("\n")
  • 关闭文件

最后,养成在完成文件操作后始终关闭文件的良好习惯。这可以通过使用 close() 方法来实现 -

document.close()

就是这样!您已成功在 Python 中将文件分解成数组。

使用 readlines() 的更简化方法

Python 还提供了一种更简化、更高效的方法来使用 readlines() 方法将文件分解成数组。此方法解释文件中的所有行并将它们作为字符串返回,其中每个字符串表示文件中的一个行。

with open("mydocument.txt", "r") as document:
rows = document.readlines()

假设您有一个名为 mydocument.txt 的文件,其内容如下 -

第 1 行

第 2 行

第 3 行

如果您执行上述 Python 代码片段,它将解释 mydocument.txt 中的内容并将其作为字符串数组存储在变量“rows”中。“rows”的内容将类似于以下输出 -

输出

['Row 1\n', 'Row 2\n', 'Row 3\n']

数组中的每个字符串都包含文件中的一个行。每个字符串末尾的 \n 是一个换行符,表示原始文件中的换行符。

在此代码中,“with”关键字用于在不再需要文件后自动关闭文件。这被认为是 Python 中文件处理的最佳实践,确保资源得到适当清理。

结论

Python 的固有清晰度和优雅性使文件处理任务(如将文件分解成数组)变得直接而高效。了解如何操作文件是 Python 编程中一项重要的技能,它为更高级的任务(包括数据探索和机器学习)铺平了道路。因此,继续磨练您的技能,坚持您的实验,并记住:Python 的力量掌握在您的手中。编码愉快!

更新于: 2023年8月9日

270 次查看

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告

© . All rights reserved.