我正在编写一个以tkinter为gui的小型python程序来选择excel文件并打开它们,我达到了可以选择文件并打开它们的地步。我的问题是当用户不选择文件并单击取消它产生和错误时。如果用户没有在tkinter文件对话框中选择文件,如何继续编码?import pandas as pdimport tkinter as tkfrom tkinter import filedialogimport openpyxlfrom openpyxl import load_workbookimport osimport sysimport numpy as nproot = tk.Tk()canvas1 = tk.Canvas(root, width=300, height=300, bg='lightsteelblue')canvas1.pack()def getExcel(): global df import_file_path = filedialog.askopenfilename() df = pd.read_excel(import_file_path) book = load_workbook(import_file_path) writer = pd.ExcelWriter(import_file_path, engine='openpyxl') writer.book = book x3 = (df.loc[(df['Var Cost'] < -500) | (df['Var Cost'] > 500)]) df3 = pd.DataFrame(x3) df3.to_excel(writer, sheet_name='VarianceSorted') writer.save() writer.close() command = import_file_path os.system(command)def end(): sys.exit()browseButton_Excel = tk.Button(text='Import Excel File', command=getExcel, bg='green', fg='white', font=('helvetica', 12, 'bold'))canvas1.create_window(150, 150, window=browseButton_Excel)quitbutton = tk.Button(text='Quit', command=end, bg='green', fg='white', font=('helvetica', 12, 'bold'))canvas1.create_window(200, 200, window=quitbutton)root.mainloop()
1 回答

尚方宝剑之说
TA贡献1788条经验 获得超4个赞
在继续之前,您应该检查返回的:import_file_path
def getExcel(): global df import_file_path = filedialog.askopenfilename() if import_file_path: df = pd.read_excel(import_file_path) book = load_workbook(import_file_path) writer = pd.ExcelWriter(import_file_path, engine='openpyxl') writer.book = book x3 = (df.loc[(df['Var Cost'] < -500) | (df['Var Cost'] > 500)]) df3 = pd.DataFrame(x3) df3.to_excel(writer, sheet_name='VarianceSorted') writer.save() writer.close() command = import_file_path os.system(command)
添加回答
举报
0/150
提交
取消