保存后我得到了没有扩展名的文件,尽管我在我的程序中通过filetypes 选项为它们提供了扩展名。我只能使用defaultextension option来做到这一点,但我想让用户决定选择一个扩展而不会弄乱代码。另外,当我使用defaultextension option 时,例如: defaultextension=".txt",它会.txt在我的文件名中添加 2 ,例如filename.txt.txt. 这是我的片段:
from tkinter import *
import tkinter.filedialog
root = Tk()
root.title("Saving a File")
root.geometry("500x500-500+50")
def save():
filename = filedialog.asksaveasfilename(
initialdir="D:",
title="Choose your file",
filetypes=(
("Text Files", "*.txt"),
("Python Files", "*.py"),
("All Files", "*.*")
)
)
try:
fileobj = open(filename, 'w')
fileobj.write(text.get(0.0, "end-1c"))
fileobj.close()
except:
pass
button = Button(root, text="Save", command=save,
cursor='hand2', width=30, height=5,
bg='black', fg='yellow', font='Helvetica')
button.pack()
text = Text(root)
text.pack() …Run Code Online (Sandbox Code Playgroud)