夥計,我試圖讓一個工具,它得在另一個項目一個項目和新的文件名與路徑的用戶路徑和文件名,我的目標是用os.rename(oldname, newname)
重命名給定的文件,但它拋出了一些錯誤。OS.rename()不與Tkinter的工作
我的代碼
from tkinter import *
import os
def Rename_Function(*args):
os.rename(oldname2,newname)
oldname.set(oldname)#"Renamed Successfully !!! ")
root = Tk()
root.title("MyPython App")
root.geometry("250x250+100+50")
oldname = StringVar()
oldname2= StringVar()
newname= StringVar()
Title1 = Label(root,text="FileName (with path):")
Title1.grid(row=0, column=0)
Oldfilename = Entry(root, textvariable=oldname2)
Oldfilename.grid(row=0, column=1)
Title2 = Label(root, text="New Filename:")
Title2.grid(row=1, column=0)
Newfilename = Entry(root, textvariable=newname)
Newfilename.grid(row=1, column=1)
RenameButton = Button(root, text="RENAME MY FILE", command=Rename_Function)
RenameButton.grid(row=3,columnspan=2, sticky="NWES")
FinalOutput = Label(textvariable=oldname)
FinalOutput.grid(row=4, columnspan=2, sticky = "NWES")
root.mainloop()
我得到上面的錯誤,當我按一下按鈕, 可有人指導我如何使其發揮作用。
我有一個疑問,os.rename()
功能應該在一些其他的方式,因爲它的另一模塊的功能進行訪問。由於我是學習者,我不知道如何有效地使用它們。請指導我解釋我,以便我更好地理解這個概念。
當您應該傳遞本地字符串時,您正在傳遞'StringVar()'。在調用重命名函數之前轉換爲字符串。 – SuperSaiyan
@SuperSaiyan你能告訴我如何與示例行做一個'STRINGVAR()'你的意思是使用STR()函數? – Sundararajan