Python 如何在原始位置或引号之间提取和保存文本文件中的字符串?
我目前正在使用它来尝试提取引号之间的文本和字符串等,并用提取的文本/字符串加载文本框。我想知道是否有一种方法可以将文本文件中的文本写回它原来所在的位置,或者在我现在提取的引用之间写回它 例如,如果我在文本文档中有这样一行: 随机文本随机文本“你好,世界,这是文本文档文件.txt”随机文本随机文本 我怎样才能提取引号中的内容并在文本框中进行编辑,然后将其写回来源 这段代码可以完成所有操作,但可以将其写回引号之间的文本文档。我想不出那部分。它可以按原样写入文本文档,但会在当前配置中重写文件。我一直在研究读线、写线和正则表达式等来解决这个问题,但我被难住了Python 如何在原始位置或引号之间提取和保存文本文件中的字符串?,python,python-2.7,file,tkinter,Python,Python 2.7,File,Tkinter,我目前正在使用它来尝试提取引号之间的文本和字符串等,并用提取的文本/字符串加载文本框。我想知道是否有一种方法可以将文本文件中的文本写回它原来所在的位置,或者在我现在提取的引用之间写回它 例如,如果我在文本文档中有这样一行: 随机文本随机文本“你好,世界,这是文本文档文件.txt”随机文本随机文本 我怎样才能提取引号中的内容并在文本框中进行编辑,然后将其写回来源 这段代码可以完成所有操作,但可以将其写回引号之间的文本文档。我想不出那部分。它可以按原样写入文本文档,但会在当前配置中重写文件。我一直在
from Tkinter import *
import re
root = Tk()
with open('file.txt', 'r') as f:
data = ''.join(f.readlines())
m = re.search('"([^"]*)"', data, re.S | re.M)
tBox = Text(root, height=2, width=50)
tBox.insert(END, m.group(1))
tBox.pack()
def retrieve_input():
inputV = tBox.get("1.0", "end-1c")
f = open('file.txt', 'w')
f.write(inputV)
f.close()
btn = Button(root, text="Go", command=lambda: retrieve_input())
btn.pack()
root.mainloop()
不要试图对“file.txt”进行部分修改。只需修改
数据
并将整个内容写入“file.txt”。这可能就是我最终要做的。我只是希望我能想出一些办法,在运行中只写字符串等。可以修改文件内容,但这很混乱,而且很容易出错,因为新数据必须与旧数据大小完全相同,除非修改文件末尾的数据。除非文件很大,否则只需重新编写整个文件就更简单了。是的,这相当于总结了我今天早上读到的关于尝试这么做的内容。谢谢你的回复。如果你好奇的话,下面是一些对文本文件进行就地修改的代码。