我想知道是否有类似于Java的 JFileChooser
的Python模块?
JFileChooser
是一个用于选择文件的图形界面。
最好是已经包含在Python中的模块,也可以使用Tkinter。
我想知道是否有类似于Java的 JFileChooser
的Python模块?
JFileChooser
是一个用于选择文件的图形界面。
最好是已经包含在Python中的模块,也可以使用Tkinter。
wxPython(www.wxpython.org)提供了wx.FileDialog类,可以在任何支持的平台(Mac、Linux或Windows)上为您提供本地文件选择对话框。
我曾经发现的最简单的方法是使用PyGTK和Kiwi:
from kiwi.ui.dialogs import open as open_dialog
chosen_path = open_dialog('Select a file', folder='/start/folder')
if chosen_path is not None:
# do something ...
如果不需要使用wxPython并且坚持使用标准的Python库,您可以使用tkFileDialog.askopenfilename()方法:
#!/usr/bin/python
from Tkinter import *
from tkFileDialog import askopenfilename
root = Tk()
root.withdraw()
print askopenfilename()
对于Python 3,您需要使用tkinter.filedialog及其相关内容。以下是一个简短的程序示例,通过askopenfilename打开并打印用户选择的TXT文件:
from tkinter import *
from tkinter.filedialog import askopenfilename
root = Tk()
root.withdraw()
root.update()
pathString = askopenfilename(filetypes=[("Text files","*.txt")])
if pathString:
openFile = open(pathString, 'r')
fileString = openFile.read()
print(fileString)
root.destroy()
输出是所选文件中的任何内容。
pathString
的定义(而不是空字符串):if pathString:
(请参见此答案https://stackoverflow.com/a/47067803/1908115) - erik也许你想看看Jython。