我已经在各种不同的程序上工作了一段时间来练习我的Python,最值得注意的是我选择你自己的冒险游戏,到目前为止已超过1000行。最近,我一直在尝试从Python中编辑文件,我似乎无法弄明白。例如,如果我将变量设置为用户输入,如下所示:
input1 = raw_input("What is your favorite food?")
然后,假设我想将此文本保存为已存在的.txt文件,例如food.txt
。我该怎么做?
答案 0 :(得分:2)
这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()
答案 1 :(得分:1)
open()
内置Python方法(doc)通常使用两个参数:文件路径和模式。您有三种主要模式(使用最多):r
,w
和a
。
r
代表读取,并使open("/path/to/myFile.txt", 'r')
打开现有文件,只能读取它(不能编辑),{您可以在this documentation中找到{1}}或其他方法。
myFile.readlines()
代表写,不仅会删除文件中的所有内容(如果存在),还允许您通过w
在其上写新内容
myFile.write("stuff I want to write")
代表追加,并将内容添加到现有文件中,而不会删除可能已写入的内容。这是在向非空文件中添加行时应使用的参数。
使用a
完成工作后,一定不要忘记关闭文件,因为只有在完成所有更改,更新,写作的时候才能完成。
添加一行的小片段:
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"
答案 2 :(得分:0)
打开名为food.txt的文件
f = open('food.txt', 'w')
要写为新行:
f.write("hello world in the new file\n")
如果你想要它在同一行,请删除\ n。
阅读它你可以做例如
print(f.read())
如果你想追加:
with open('food.txt', "a") as f:
f.write("appended text")
答案 3 :(得分:0)
你的问题有点含糊不清,但如果你正在寻找一种方法来存储价值以供以后使用和轻松检索;您可能想查看ConfigParser。 :)
答案 4 :(得分:0)
我为这项任务找到了漂亮的模块 - in_place,Python 3的例子:
import in_place
with in_place.InPlace('data.txt') as file:
for line in file:
line = line.replace('test', 'testZ')
file.write(line)