如何在Python中打开和编辑现有文件?

2024-09-20 23:01:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经在各种不同的程序上工作了一段时间来练习我的Python,最值得注意的是我的choose your own冒险游戏,到目前为止已经超过1000行了。最近,我一直在尝试从Python中编辑文件,但似乎无法解决这个问题。例如,如果我将变量设置为用户输入,如下所示: input1 = raw_input("What is your favorite food?")然后,假设我想将此文本保存到已经存在的.txt文件中,如food.txt。我该怎么做?


Tags: 文件用户程序txt编辑inputyourraw
3条回答

内置Python方法(doc)通常使用两个参数:文件路径和模式。有三种主要模式(最常用的模式):rwa

  • r代表read,它将使open("/path/to/myFile.txt", 'r')打开一个现有的文件,并且只能用myFile.readlines()或其他可以在this documentation中找到的方法读取它(而不是编辑)。

  • w代表write,它不仅可以删除文件中的所有内容(如果存在的话),还可以让您通过myFile.write("stuff I want to write")在文件上编写新内容。

  • a代表append并将内容添加到现有文件中,而不删除可能已写入的内容。这是向非空文件添加行时应使用的参数。

使用完myFile.close()文件后,不要忘记关闭该文件,因为只有在此时,才能完成所有更改、更新和写入。

用于添加行的小片段:

f = open("/path/to/myFile.txt", 'a')
f.write("This line will be appended at the end")
f.close()

如果文件内容是

"Stuff
Stuff which was created long ago"

然后文件,在代码之后,看起来像

"Stuff
Stuff which was created long ago
This line will be appended at the end"

这个link也许会有帮助

代码如

# Open a file
fo = open("foo.txt", "a") # safer than w mode
fo.write( "Python is a great language.\nYeah its great!!\n");

# Close opend file
fo.close()

打开名为food.txt的文件

f = open('food.txt', 'w')

作为新行书写:

f.write("hello world in the new file\n")

如果要在同一行上,请删除。

例如,你可以阅读它

print(f.read())

如果您想附加:

with open('food.txt', "a") as f:
    f.write("appended text")

相关问题 更多 >

    热门问题