我正在使用 tkinter 浏览目录并将文件名用作另一个函数的输入变量。
我已将变量标记为全局变量,但仍然没有显示此类变量,请帮忙。
非常感谢!!!!
import pandas as pd
import numpy as np
import tkinter as tk
from tkinter import *
from tkinter.filedialog import askopenfilename
import warnings
warnings.filterwarnings('ignore')
def wp_mapping_input(filename):
df=pd.read_excel(filename, sheet_name='Sheet1')
df.to_excel('C:\Desktop\output.xlsx')
def browsefunc():
global filename
filename =askopenfilename(filetypes=(("Excel files","*.xlsx"),("All files","*.*")))
op_input.insert(tk.END, filename)
root = Tk()
lbl_input = Label(root, text="Choose your file location")
op_input = Entry(root)
btn_browse=Button(root,text="Browse",command=browsefunc)
btn_OK = Button(root, text='OK', padx=60, pady=4, command = wp_mapping_input(filename))
lbl_result = Label(root, text='The output file has been saved in the same folder: output.xlsx', pady=10)
lbl_input.grid(row=0, column=0, sticky='WE')
op_input.grid(row=1, column=0, columnspan=3, sticky='WE')
btn_browse.grid(row=1,column=4)
btn_OK.grid(row=3, column=1)
lbl_result.grid(row=4, column=0, columnspan=4, sticky='WE')
root.geometry("500x500+100+100")
mainloop()
错误是:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-4-6628c3e17c4d> in <module>
21 op_input = Entry(root)
22 btn_browse=Button(root,text="Browse",command=browsefunc)
---> 23 btn_OK = Button(root, text='OK', padx=60, pady=4, command = wp_mapping_input(filename))
24 lbl_result = Label(root, text='The output file has been saved in the same folder: output.xlsx', pady=10)
25
NameError: name 'filename' is not defined