使用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
文件内。