0
我想存儲文件。出於這個原因,我使用帶'with'語句的filedialog。只要我選擇一個文件並保存,一切正常。然而,當FileDialog的被取消,我得到以下錯誤:tkinter filedialog聲明
文件 「... \ SRC \ test.py」,7號線,在 與filedialog.asksaveasfile(模式= 'W')作爲MYFILE : AttributeError的:進入
是否有一個角落找尋工作與「用」的語句來做到這一點?
import tkinter as tk
from tkinter import filedialog
root = tk.Tk()
with filedialog.asksaveasfile(mode='w') as myFile:
myFile.write('Test')
root.mainloop()
使用一個'try ... except'塊在它周圍。當你取消對話'filedialog.asksaveasfile()'返回'None'和'None'時,它沒有'__enter __()'來處理'with'語句。你可以編寫你自己的'asksaveasfile()'方法(無論如何,它只是'filedialog.SaveAs()'方便的包裝器)返回一個有效的'with'結構,但是'myFile'必須被設置爲'沒有',你必須在寫完之前檢查它,完全否定'with'語句的目的。 – zwer
而不是編輯您對問題的回答,請將其作爲下面的答案發布。 – Lafexlos