我正在为我的一个脚本使用tkinter,但在doSomthing()
方法中使用filetypes
参数时遇到了麻烦。
askopenfilename()
这工作得很好,但是过滤器区分大小写,有什么办法可以做到?
无论情况如何,我都希望能够看到所有扩展名为INFILE = askopenfilename(filetypes = (("TEST files", "*.test"), ("all files", "*.*")))
的文件(又名.test
)
我很确定我不必为每个组合都用硬文字,因此,如果您对如何做到这一点有任何了解
答案 0 :(得分:1)
没有内置选项可以执行此操作,但是您可以例如将区分大小写的扩展名保存在列表中,然后引用它:
from tkinter import filedialog
from tkinter import *
text_file_extensions = ['*.txt', '*.txT', '*.tXT', '*.Txt', '*.TXt', '*.TXT', '*.tXt']
ftypes = [
('test files', text_file_extensions),
('All files', '*'),
]
root = Tk()
root.filename = filedialog.askopenfilename(initialdir = "/",title = "Select file",filetypes=ftypes)
print (root.filename)
演示: