跳至主要内容

文本文件处理

Text Files Processing in Python

文本文件用于存储和读取数据,例如简单的文本文档或数据库输出。Python 提供了多种方法来处理文本文件,包括读取、写入和追加到文件。了解如何处理文本文件对于任何使用 Python 的程序员来说都很重要,因为它可以帮助他们在程序中有效地管理和操作数据。

如何在 Python 中读取文本文件

要在 Python 中读取文本文件,可以使用内置函数 open() 以读取模式打开文件。以下有 2 个代码示例

打开文本文件

with open('filename.txt', 'r') as file:
    content = file.read()

此处,open() 函数以读取模式打开文件 filename.txt 并返回一个文件对象。with 语句用于确保在使用后正确关闭文件。read() 函数读取文件的内容并将其存储在 content 变量中。

逐行读取文本文件

with open('filename.txt', 'r') as file:
    for line in file:
        print(line)

此处,open() 函数以读取模式打开文件 filename.txt 并返回一个文件对象。with 语句用于确保在使用后正确关闭文件。for 循环逐行读取文件并在控制台上打印出来。

在这两个示例中,你可以将 filename.txt 替换为要读取的实际文本文件的路径。

在 Python 中写入文本文件

在 Python 中写入文本文件是一项基本的文件操作,涉及创建新文件、向其中写入数据以及选择性地关闭文件。以下是如何在 Python 中写入文本文件的两个示例

file = open('example.txt', 'w')
file.write('Hello, world!')
file.close()

在此示例中,我们使用“w”模式(代表写入)创建了一个名为 example.txt 的新文件。然后,我们使用 write() 方法将字符串 Hello, world! 添加到文件中。最后,我们使用 close() 方法关闭文件。

file = open('example.txt', 'w')
lines = ['Line 1\n', 'Line 2\n', 'Line 3\n']
file.writelines(lines)
file.close()

此处,我们创建了一个名为 example.txt 的新文件,并使用“w”模式将其分配给 file 变量。然后,我们将三行文本定义为 字符串 列表并将其分配给 lines 变量。我们使用 writelines() 方法将所有行写入文本文件。最后,我们使用 close() 方法关闭文件。

如何在文本文件中获取 Python 输出

如果你想将 Python 代码的输出保存到文本文件中,可以使用 Python 中的 open() 函数

output = "Hello, world!"
with open("output.txt", "w") as file:
    file.write(output)

在此示例中,我们有一个字符串 output,其中包含我们想要保存在文件中的文本。我们使用 open() 函数以写入模式打开名为 output.txt文件。然后,我们使用文件对象的 write() 方法将 output 的内容保存到文件中。

在任何一种情况下,你现在都可以打开文件并查看已写入的文本。虽然这些示例很简单,但你可以修改它们以适应更复杂的情况。

如何将 Numpy 文件转换为文本文件

在处理数值数据时,numpy 是在 Python 中操作数组的最热门库之一。有时,您可能需要将 numpy 文件转换为文本文件,以便于共享和协作。以下是两种在 Python 中将 numpy 文件转换为文本文件的方法

Numpy 库中的 savetxt() 函数可用于将数组中的数据保存到文本文件中。以下是操作方法

### Method 1
import numpy as np

data = np.load('file.npy') # load the Numpy file
np.savetxt('file.txt', data) # save the data from the Numpy file to a text file

您还可以使用数组对象的 tofile() 方法将数据保存到文本文件中。

### Method 2
import numpy as np

data = np.load('file.npy') # load the Numpy file
data.tofile('file.txt', sep=',', format='%10.5f') # save the data to a text file

在上述示例中,sep 参数指定数据值之间的分隔符(本例中为逗号),format 参数指定输出值格式。

与我们一起贡献!

不要犹豫,在 GitHub 上为 Python 教程做出贡献:创建一个分支,更新内容并发出拉取请求。

Profile picture for user AliaksandrSumich
Python 工程师,第三方 Web 服务集成专家。
Profile picture for user angarsky
更新时间:05/03/2024 - 21:52