在编码中,文件用于存储数据。然后,你可以随时轻松访问该数据。

在 Python 中读取、写入和编辑文件是一项常见任务,因为该语言为我们提供了允许我们这样做的内置函数。

在本文中,我将创建一个简单的项目,我将在其中写入、追加并最终从 Python 中的文本文件中读取,以向你展示它是如何完成的。

你可以跟我一起完成和我一样的步骤。让我们开始吧!

如何设置项目的结构

第一步是设置项目的目录结构。选择要创建新目录的位置,然后按照以下步骤操作。我正在我的主目录中创建项目。

#此命令会把你带到主目录
cd 

#创建一个新目录并为其命名
mkdir python_text

#移动到你刚才创建的目录
cd python_text

#在同一目录中创建两个空文件:一个文本文件,一个用于保存 Python 脚本
touch text.txt scripts.py

#打开 Visual Studio Code 进行编辑
code .

文本文件现在是空的:

Screenshot-2021-09-02-at-11.17.28-AM

我们给它加点东西。

如何在 Python 中写入文本文件

在 Python 中写入、追加和读取文本文件的最佳实践是使用 with 关键字。

一般语法如下所示:

with open("path_to_and_name_of_file","mode") as variable_name:
    variable_name.write('What I want to write goes here')

解析:

  • 你首先从 with 关键字开始。
  • 接下来,打开文本文件。open() 函数返回一个文件对象并接受两个参数:文件的路径和要打开的文件本身的名称。本例中的文件与 Python 脚本在同一目录下,所以路径很简单。第二个参数是打开文件的模式。要写入文件,模式为 w 表示写入。
  • 然后我们有 as 关键字。
  • 接下来,变量名称是你将要存储的文本内容的临时存储位置。
  • .write() 方法用于在文本文件中写入并添加你想要的字符串内容。

给文本文件添加一些文本,在 scripts.py 中添加:

with open("text.txt","w") as file:
    file.write("I am learning Python!\n")
    file.write("I am really enjoying it!\n")
    file.write("And I want to add more lines to say how much I like it")

要在不同的行上添加文本,就像我在上面的示例中所做的那样,你必须自己显式添加换行符 \

打开内置终端 Visual Studio Code(Control ~),并通过键入 python3 scripts.py 来运行代码。

查看 text.txt,它应该添加以下内容:

Screenshot-2021-09-02-at-6.51.51-PM

请务必注意,每次使用 .write() 方法并运行代码时,你之前拥有的任何文本都将被覆盖。

假设我第一次创建 text.txt 文件时已经有一些虚拟文本:

Screenshot-2021-09-02-at-7.03.03-PM

如果我运行之前的代码:

with open("text.txt","w") as file:
    file.write("I am learning Python!\n")
    file.write("I am really enjoying it!\n")
    file.write("And I want to add more lines to say how much I like it")

它看起来会是这样:

Screenshot-2021-09-02-at-7.04.23-PM

我之前的数据就没有了。

如何在 Python 中追加一个文本文件

追加和写入类似。

但是这一次,你打开文本文件进行追加,在 open() 函数中模式的参数 a 用于 append

with open("text.txt","a") as file:
    file.write("What I want to add on goes here")

.write() 方法中的任何内容都将添加到文本文件的末尾。

因此,要向 text.txt 添加更多文本,请添加以下内容:

with open("text.txt","a") as file:
    file.write("I am adding in more lines\n")
    file.write("And more…")

再次运行代码,text.txt 是这样的:

Screenshot-2021-09-02-at-7.15.51-PM

之前的文本不会被删除。

新文本会在旧文本之后立即添加,你必须再次添加换行符:

with open("text.txt","a") as file:
    file.write("\n")
    file.write("I am adding in more lines\n")
    file.write("And more…")
Screenshot-2021-09-02-at-7.18.15-PM

如何在 Python 中读取文件

要读取文件,你再次使用 with 关键字和带有两个参数的 open() 函数:第一个参数是文件的路径和名称,第二个参数是打开文件的模式。

对于打开文本文件,模式是 r 读取。

然后,print() 函数打印到控制台并使用 read() 函数将变量名称作为参数。

with  open('text.txt','r') as file:
    print(file.read())

输出:

Screenshot-2021-09-07-at-1.44.04-PM

要在 Python 中读取文件,你还可以创建一个 for 循环来遍历文本文件中的每一行:

with open("text.txt","r") as file:
    for line in file:
        print(line)

输出:

Screenshot-2021-09-07-at-1.46.25-PM

通过这种方法,每一行都被单独打印出来。

小结

本文向你展示了一些关于如何使用 Python 写入、编辑和读取文件的简单示例。

如果你想了解有关 Python 编程语言的更多信息,freeCodeCamp 有一个免费的 Python 认证,你可以从基础开始学习该语言的更复杂方面。最后,你将构建五个项目来实践你所学的知识。

感谢你阅读本文,祝你学习愉快!

原文:Python Create File – How to Append and Write to a Text File,作者:Dionysia Lemonaki