TKinter - 用户输入写入文件

詹姆斯·科贝特

所以,我使用 TKinter 和 Python 来尝试从用户那里获取输入并将其写入一个单独的文件以供以后使用,但我似乎无法让它工作。查看了其他问题并根据他们的答案调整了我的代码的某些部分后,我仍然无法让它工作。

这是完整的代码:

import tkinter

def write_File (text_File):
    file = open("users.txt", "a")
    user_Input = str(file)
    file.write(user_Input).get()
    text_File.insert(INSERT, file.read())
    file.close()

screen = tkinter.Tk()


the_input = tkinter.Entry(screen)
the_input.grid(row=1, column=1)

button_Write = tkinter.Button(screen, text = "Send to file:", command = lambda: write_File(the_input)).grid(row=10, column=1)

screen.mainloop()

按下按钮后,我在控制台中给出的错误说:

    File "[file directory]", line 9, in write_File
    file.write(user_Input).get()
AttributeError: 'int' object has no attribute 'get'

任何人都可以提供任何帮助?

杰克康克顿-达比

所以我不完全确定您使用什么资源来创建 write_File,但有一些错误。我已经在下面的代码中修复了它们,并附有注释来解释我所做的更改以及原因。

import tkinter

def write_File (text_File):
    file = open("users.txt", "a")
    #The object text_File is a tkinter.Entry object, so we will get
    #   the user input by calling the get method on that object.
    user_Input = text_File.get()
    #Here we now directly write the user input to the file that has been
    #   opened, I'm not sure you were previously doing with writing the
    #   string version of the file, but this appears to achieve what you
    #   desire.
    file.write(user_Input)
    file.close()

screen = tkinter.Tk()


the_input = tkinter.Entry(screen)
the_input.grid(row=1, column=1)

button_Write = tkinter.Button(screen, text = "Send to file:", command = lambda: write_File(the_input)).grid(row=10, column=1)

screen.mainloop()

另一件事是,根据您使用的 Python 版本,而不是使用file = open(...)然后file.close()在方法结束时,您可以改为使用with open(...) as file:将在范围结束时自动关闭文件构造。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将用户输入写入文件

来自分类Dev

存储来自输入字段的用户输入,tkinter

来自分类Dev

将输入小部件的输入写入CSV(tkinter)

来自分类Dev

如何在tkinter上允许用户输入?

来自分类Dev

如何获得tkinter标签的用户输入?

来自分类Dev

难以显示用户在Tkinter中输入的图像

来自分类Dev

Python 2.7-Tkinter用户输入提示

来自分类Dev

Python Tkinter - 处理用户输入的数据

来自分类Dev

使用tee将用户输入写入文件

来自分类Dev

更新输入文字(Tkinter)

来自分类Dev

打印tkinter askopenfile()输入

来自分类Dev

打印tkinter askopenfile()输入

来自分类Dev

更新输入的文本(Tkinter)

来自分类Dev

Python Tkinter输入提示

来自分类Dev

tkinter中的输入错误

来自分类Dev

用 tkinter 输入?

来自分类Dev

StringVar不写入文件帮助python 3 tkinter

来自分类Dev

使用tkinter按钮命令将数据写入文件

来自分类Dev

从用户那里获取输入并在TKinter中返回答案

来自分类Dev

用户输入相同的占位符文本python tkinter

来自分类Dev

从用户那里获取输入并在TKinter中返回答案

来自分类Dev

如何使用用户输入使用 Tkinter 编写输出?

来自分类Dev

tkinter循环和串行写入

来自分类Dev

用户在tkinter Entry小部件中输入测试时,如何关闭当前的tkinter窗口并打开新的tkinter窗口

来自分类Dev

最佳的tkinter文件结构

来自分类Dev

将用户输入的字符串写入C中的文件

来自分类Dev

如何阅读用户输入并将其写入.txt。文件?

来自分类Dev

使用write()将char *从用户输入写入文件

来自分类Dev

如何在python文件中写入用户输入?