利用tkFileDialog.askopenfilenames获取多个文件名
用Python写小脚本,要选择文件,最简单的方式莫过于使用内置的Tk的控件了。如果需要同时选择多个文件,可以使用tkFileDialog.askopenfilenames
,如下:
import tkFileDialog
fns = tkFileDialog.askopenfilenames(filetypes=[("text file", "*.txt"),("all","*.*")])
print(repr(fns))
但问题是,在Python 2.6以后的版本,tkFileDialog.askopenfilenames
返回的居然是字符串,类似于这样:
u'C:/Python27/LICENSE.txt C:/Python27/NEWS.txt C:/Python27/README.txt'
如果每个文件的路径中都没有空格,用fps.split()
就可以分解字符串得到文件名的列表,如果文件名或文件路径中包含空格,这个字符串将很不好解析。解决方法如下 …