使用Python打印字符串到文本文件

本教程将讨论我们可以使用哪些方法在Python中向文本文件写入数据。

用Python中的open() 方法写入文本文件

内置的方法open() 可以与 Python 中的文本文件进行交互。open() 方法将文件路径和模式作为输入参数,它打开文件并返回其文件对象。

要读取数据,我们需要指定r 作为模式,而要写入数据,我们需要指定w 作为模式。一旦我们以写模式打开了一个文件,我们就可以访问先前返回的文件对象的write() 方法来向文件写入数据。

在向文件写入所有数据后,我们需要用close() 方法关闭我们的文件。如果我们希望另一个程序能够读取我们的数据,这是必要的,如果操作不当,我们的数据会被破坏。

代码:

data = "This is some data"
File = open("File.txt", "w")
File.write("Data: %s" % data)
File.close()

File.txt:

Data: This is some data

在上面的代码中,我们以写模式打开了文件File.txt ,并用write() 方法在这个文件里面写下了data 。尽管如果我们每次打开文件时都小心翼翼地关闭文件,这种方法效果很好,但它并不可取。

用Python中的open() 方法和上下文管理器写入文本文件

当没有进行任何读写操作时,上下文管理器会自动关闭一个先前打开的文件。上下文管理器的语法涉及到写一个with ,然后是open() 和一个别名。

这就形成了一个缩进的代码块。我们的文件只在这个块的上下文中打开,当这个块结束时,上下文管理器会自动关闭该文件。

下面的代码例子演示了如何利用open() 方法和上下文管理器将一些数据写到 Python 的文本文件中。

代码:

data = "This is still some data"
with open("File.txt", "w") as File:
    File.write("Data: %s" % data)

File.txt:

Data: This is still some data

我们在上面的代码中用open() 方法和上下文管理器打开了一个文件。上下文管理器方法远远优于简单的open() 方法,在处理多个文件时,应该总是首选它。

使用Python中的pathlib 模块写到文本文件

pathlib 模块提供了在 Python 中与我们机器的文件系统交互的方法。我们可以使用pathlib 模块的Path() 方法来打开我们想要的文本文件。

Path() 方法将文件的路径作为一个输入参数,并返回其对象。然后我们可以使用先前返回的对象的write_text() 方法来向我们的文件写入一些数据。

使用write_text 方法,我们不必担心明确地打开和关闭我们的文件。

代码:

import pathlib
data = "This is some data"
File = pathlib.Path("File.txt")
File.write_text("Data: %s" % data)

File.txt:

Data: This is some more data

在代码中,我们用pathlib 模块将data 变量写入我们的File.txt 文件内。