在 python 中,快速简单的文件对话框? 转自::在 python 中,快速简单的文件对话框?
我的脚本解析一个文件并将它的内容加载到数据库中。 我不需要 UI,但现在我会提示用户使用raw_input 这是最不友好的这是最不友好的,特别是因为用户无法复制路径。 我希望快速而简单地将文件选择对话框呈现给用户,它们可以选择文件,然后加载到数据库中。 ( 在我的用例中,如果他们碰巧选择了错误的文件,那么它将失败解析,即使它被加载到数据库中) 也不会出现问题。
import tkFileDialog
file_path_string = tkFileDialog.askopenfilename()
这里代码接近我想要的,但它留下了一个恼人的空框架打开( 无法关闭,可能是因为我没有注册close事件处理程序) 。
我不需要使用,但是因为它位于 python 标准库中,它是最快和最容易解决的问题。
在没有其他任何UI的脚本中提示输入文件或者文件名的快捷方式是什么?
Tkinter是最简单的方式,如果你不想有任何其他依赖。 只显示对话框没有任何其他gui元素,你必须隐藏 root 窗口使用
withdraw 方法:
import tkinter as tk
from tkinter import filedialog
root = tk.Tk()
root.withdraw()
file_path = filedialog.askopenfilename()
尝试使用 wxPython标题:
import wx
def get_path(wildcard):
app = wx.App(None)
style = wx.FD_OPEN | wx.FD_FILE_MUST_EXIST
dialog = wx.FileDialog(None, 'Open', wildcard=wildcard, style=style)
if dialog.ShowModal() == wx.ID_OK:
path = dialog.GetPath()
else:
path = None
dialog.Destroy()
return path
print get_path('*.txt')
import easygui
path = easygui.fileopenbox()
要安装 easygui,你可以使用 pip:
pip3 install easygui
它是一个单一的纯 python 模块( easygui.py ),使用 tkinter 。
浙公网安备 33010602011771号