Я получаю ожидаемый объект str, bytes или os.PathLike, а не ошибку кортежа. Я не могу скопировать файл пути в переменную.
Я ожидаю, что путь будет скопирован в переменную
import os
import re
import ctypes
import tkinter as tk
from tkinter import Button,X
from tkinter.messagebox import askyesno,showwarning,showinfo
from tkinter.filedialog import askopenfilename,asksaveasfilename
root = tk.Tk ()
inname = ()
def btn1():
global inname
inname = askopenfilename(initialdir = "/",title = "Select file",filetypes = [("Text files","*.txt"),("all files","*.*")])
print (inname)
errmsg = 'Error!'
outname = ()
def btn2():
global outname
outname = asksaveasfilename(initialdir = "/",title = "Select save",filetypes = (("Text files","*.txt"),("all files","*.*")))
print(outname)
errmsg = 'Error!'
def btn3():
if askyesno('Verify', 'Really quit?'):
showwarning('Yes', command= root.destroy())
else:
showinfo('No', 'Quit has been cancelled')
errmsg = 'Error!'
def btn4():
showinfo('Help','contact admin')
errmsg = 'Error!'
Button(text='Open file', command=btn1).pack(fill=X)
Button(text='Save file', command=btn2).pack(fill=X)
Button(text='Quit', command=btn3).pack(fill=X)
Button(text='Help', command=btn4).pack(fill=X)
win= open(inname)
out = open(outname, "w+")
win.close()
out.close()
root.mainloop()
ctypes.windll.user32.MessageBoxA(0, "Job done", "job done", 1)
Ниже приведена ошибка, которую я получаю
Traceback (most recent call last):
File "C:/Users/hmamed1/.PyCharmCE2019.1/config/scratches/scratch.py", line 137, in <module>
win= open(inname)
TypeError: expected str, bytes or os.PathLike object, not tuple