代码给出 missing 1 required positional argument 错误
Code gives missing 1 required positional argument error
此代码给出错误:
TypeError: otsi() missing 1 required positional argument: 'x'
该代码应该通过其名称的一部分打开 .pdf 文件,我将其输入到 Tellimus_entry。
Tellimus_entry = Entry(ws)
Tellimus_entry.grid(row=4,column=3,padx=(10, 10), sticky=(N, S, E, W), columnspan=3)
def otsi(x):
return glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{x}*.pdf')
otsitav = Tellimus_entry.get()
files = otsi(otsitav)
print(files)
if files:
os.startfile(files[0])
nupp = ttk.Button(ws, text="Ava tellimuse PDF", command=otsi)
nupp.grid(row=3,column=3, sticky=(N, S, E, W), pady=5, padx=5)
您可以将命令参数作为 lambda 传递,这样您需要的 x
参数就不会丢失
Tellimus_entry = Entry(ws)
Tellimus_entry.grid(row=4,column=3,padx=(10, 10), sticky=(N, S, E, W), columnspan=3)
def otsi(x):
return glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{x}*.pdf')
otsitav = Tellimus_entry.get()
files = otsi(otsitav)
print(files)
if files:
os.startfile(files[0])
nupp = ttk.Button(ws, text="Ava tellimuse PDF", command=lambda: otsi(whatever_param_you_need))
nupp.grid(row=3,column=3, sticky=(N, S, E, W), pady=5, padx=5)
根据你在问题中的描述,其实 otsi()
的参数 x
是没有必要的:
def otsi():
otsitav = Tellimus_entry.get()
files = glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{otsitav}*.pdf')
print(files)
if files:
os.startfile(files[0])
此代码给出错误:
TypeError: otsi() missing 1 required positional argument: 'x'
该代码应该通过其名称的一部分打开 .pdf 文件,我将其输入到 Tellimus_entry。
Tellimus_entry = Entry(ws)
Tellimus_entry.grid(row=4,column=3,padx=(10, 10), sticky=(N, S, E, W), columnspan=3)
def otsi(x):
return glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{x}*.pdf')
otsitav = Tellimus_entry.get()
files = otsi(otsitav)
print(files)
if files:
os.startfile(files[0])
nupp = ttk.Button(ws, text="Ava tellimuse PDF", command=otsi)
nupp.grid(row=3,column=3, sticky=(N, S, E, W), pady=5, padx=5)
您可以将命令参数作为 lambda 传递,这样您需要的 x
参数就不会丢失
Tellimus_entry = Entry(ws)
Tellimus_entry.grid(row=4,column=3,padx=(10, 10), sticky=(N, S, E, W), columnspan=3)
def otsi(x):
return glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{x}*.pdf')
otsitav = Tellimus_entry.get()
files = otsi(otsitav)
print(files)
if files:
os.startfile(files[0])
nupp = ttk.Button(ws, text="Ava tellimuse PDF", command=lambda: otsi(whatever_param_you_need))
nupp.grid(row=3,column=3, sticky=(N, S, E, W), pady=5, padx=5)
根据你在问题中的描述,其实 otsi()
的参数 x
是没有必要的:
def otsi():
otsitav = Tellimus_entry.get()
files = glob.glob(f'C:/Users/ASUS/Desktop/Proov/*{otsitav}*.pdf')
print(files)
if files:
os.startfile(files[0])