我之前发布了一个类似于这个问题的问题,它得到了解决,但我现在面临一个新问题。我想在用户单击按钮时复制一个包含数据的文件。在我之前的问题中,我知道了如何复制并粘贴一个文件,但现在发生的是,在我运行程序的第二次,它复制了我的文件,它甚至没有将数据粘贴到新文件中,它只是创建了一个具有我指定名称的新文件,但我希望它发生在用户单击按钮时,然后文件应该被复制,数据应该在其中。以下是我使用的代码:
from tkinter import *
root=Tk()
def duplicatefunction():
f=open("prototype.txt","r")
g=open("copy.txt","w")
button1=Button(text="duplicate file", command=duplicatefunction())
button1.pack()
root.mainloop()
那么,我做错了什么?如何修复它以复制文件中的数据
您不应该在按钮的命令参数中包含
()
。所以写您拥有的复制功能除了打开2个文件外,什么也不做。一个用于阅读,一个用于写作,但实际上你并没有阅读或写作任何东西
如果要创建副本,可以使用
shutil
库中的copy2()
函数: https://docs.python.org/3/library/shutil.html在这种情况下,复制函数可能如下所示:
相关问题 更多 >
编程相关推荐