使用变量从python中的文本文档中读取

时间:2014-11-10 20:17:48

标签: python user-interface tkinter text-files

我是我的python GUI,我创建了一个问卷。在此,它允许我提问,然后将它们保存到文本文件中。我使用变量将它们保存到文本文件中,因此每个文件都不同。 E.G。

name = james(该文件将被称为james)

...或

name = Charlie(该文件将被称为Charlie)

我可以写入并保存到文本文件中。我需要做的是找到一种方法来使用变量打开文本文件。这将允许我输入一个名称,例如" James"我可以打开名为James的文件。

这是我目前的代码。

name = entry.get()       
     # this collects the name from an entry box.
newfile = (name.txt,"r")    
     # name is the variable I am using.
loaded = (newfile.read())
     # this would hopefully put the file text into a variable
textbox.delete(0.0, END)
     # this will clear the text box
textbox.insert(END, loaded) 
     # this put the text from the file (in loaded) into the text box

有没有办法允许我这样做?我希望这是有道理的。谢谢所有帮助的人。

1 个答案:

答案 0 :(得分:3)

首先,你不是在任何地方调用open。只是写一下,例如,(path, "r")没有给你一个文件对象,它只给你一个两个字符串的元组。

其次,文字字符串必须在引号中。如果你想连接两个字符串,那么它们是变量还是文字并不重要,只是+

所以:

newpath = name + ".txt"
newfile = open(newpath, "r")

此外,当你在它的时候,你应该close某个地方的文件。理想情况下使用with语句:

newpath = name + ".txt"
with open(newpath, "r") as newfile:
    loaded = newfile.read()