回答问题

我有一个简单的脚本,它解析文件并将其内容加载到数据库中。我不需要 UI,但现在我提示用户使用最不友好的raw_input解析文件,特别是因为用户无法复制/粘贴路径。我想要一种快速简便的方法向用户呈现文件选择对话框,他们可以选择文件,然后将其加载到数据库中。 (在我的用例中,如果他们碰巧选择了错误的文件,它将无法解析,即使将其加载到数据库也不会成为问题。)

import tkFileDialog
file_path_string = tkFileDialog.askopenfilename()

这段代码接近我想要的,但它留下了一个恼人的空框架打开(它无法关闭,可能是因为我没有注册关闭事件处理程序)。

我不必使用 tkInter,但由于它在 Python 标准库中,因此它是最快和最简单的解决方案的理想选择。

在没有任何其他 UI 的情况下,在脚本中提示文件或文件名的快速简便方法是什么?

Answers

如果您不想拥有任何其他依赖项,Tkinter 是最简单的方法。要仅显示对话框而不显示任何其他 GUI 元素,您必须使用withdraw方法隐藏根窗口:

import tkinter as tk
from tkinter import filedialog

root = tk.Tk()
root.withdraw()

file_path = filedialog.askopenfilename()

Python 2 变体:

import Tkinter, tkFileDialog

root = Tkinter.Tk()
root.withdraw()

file_path = tkFileDialog.askopenfilename()
Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐