Tkinter - 如何从屏幕上的 cmd 中提取错误消息?
Tkinter - how to pull error messages from cmd on screen?
我从我的 .py 项目创建了一个 .exe 文件。当我尝试在桌面上保存和输出 .csv 文件时,我得到 'error 13 permission denied',因为我没有管理员权限。相反,我需要将文件保存到 C:/Users/Public 以使其工作。
那么,每次收到 'error 13' 时,如何使用 Tkinter 使用此消息弹出 window?该错误仅在 cmd 中显示。
## Write output to csv file
def save_file():
path_to_output_file = fd.asksaveasfilename()
if not path_to_output_file:
return
file_count = 1
for rows in range(len(df)):
if rows % 500 == 0:
df[rows:rows+500].to_csv(path_to_output_file + str(file_count) + '.csv', index=False, header=True, quoting=csv.QUOTE_NONNUMERIC)
file_count += 1
如果您已经收到错误消息,可以使用 tkinter.messagebox.showinfo
函数创建弹出窗口 window 并显示错误消息。
您可以在此处找到文档:
https://docs.python.org/3/library/tkinter.messagebox.html
谢谢!
成功了!
try:
df[rows:rows+500].to_csv(path_to_output_file + str(file_count) + '.csv', index=False, header=True, quoting=csv.QUOTE_NONNUMERIC)
except PermissionError:
messagebox.showinfo('Can\'t save a file', f'File can\'t be saved to {path_to_output_file} as you don\'t have admin privileges.\nYou need to save a file to \'C:/Users/Public\'')
enter image description here
我从我的 .py 项目创建了一个 .exe 文件。当我尝试在桌面上保存和输出 .csv 文件时,我得到 'error 13 permission denied',因为我没有管理员权限。相反,我需要将文件保存到 C:/Users/Public 以使其工作。 那么,每次收到 'error 13' 时,如何使用 Tkinter 使用此消息弹出 window?该错误仅在 cmd 中显示。
## Write output to csv file
def save_file():
path_to_output_file = fd.asksaveasfilename()
if not path_to_output_file:
return
file_count = 1
for rows in range(len(df)):
if rows % 500 == 0:
df[rows:rows+500].to_csv(path_to_output_file + str(file_count) + '.csv', index=False, header=True, quoting=csv.QUOTE_NONNUMERIC)
file_count += 1
如果您已经收到错误消息,可以使用 tkinter.messagebox.showinfo
函数创建弹出窗口 window 并显示错误消息。
您可以在此处找到文档:
https://docs.python.org/3/library/tkinter.messagebox.html
谢谢! 成功了!
try:
df[rows:rows+500].to_csv(path_to_output_file + str(file_count) + '.csv', index=False, header=True, quoting=csv.QUOTE_NONNUMERIC)
except PermissionError:
messagebox.showinfo('Can\'t save a file', f'File can\'t be saved to {path_to_output_file} as you don\'t have admin privileges.\nYou need to save a file to \'C:/Users/Public\'')
enter image description here