Ошибка типа: ожидаемый объект str, bytes или os.PathLike, а не ошибка кортежа - PullRequest
0 голосов
/ 07 мая 2019

Я получаю ожидаемый объект 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...