获取保存文件的目录(tkinter 文件保存提示符)



我正在使用tkinter在python中制作一个小的GUI,其中一部分是询问用户在哪里保存文件。 这是我的代码

from tkinter import *
import tkinter.filedialog as tf
import tkinter
import time
fileName = ""
def save():
myFormats = [
('Text File','*.txt')
]
root = tkinter.Tk()
q = tf.asksaveasfilename(parent=root,filetypes=myFormats ,title="Save the image as...")
print(type(q))
fileName = q
print(fileName)
if len(fileName ) > 0:
print ("Now saving under %s" % fileName)

master = Tk()
Button(master, text='Save file', command=save).grid(row=3, column=1, sticky=W, pady=4)
print(fileName)
mainloop( )
print(fileName)

save()内部的print(fileName)打印正确的路径,但是,代码末尾的相同语句只是给出了一个,它在开始时被初始化为。我一直在打破我的头,试图弄清楚为什么会发生这种情况并找到解决它的方法。任何帮助都会很棒!

想知道这是否与易失性变量有关

提前感谢!

由于作用域规则,fileName中的save变量与全局命名空间中的变量global不同。 如果要引用全局变量,请使用 CC_8 关键字:

def save():
myFormats = [('Text File','*.txt')]
root = tkinter.Tk()
q = tf.asksaveasfilename(parent=root,
filetypes=myFormats,
title="Save the image as...")
global fileName
fileName = q

最新更新