为了在文件对话框中获取具有给定扩展名的预期文件集,我在几个地方看到了将模式写为('label','pattern')
,模式在一个字符串中。但是以下不起作用
from tkinter import filedialog as fd
fd.askopenfilenames(
title='Choose a file',
filetypes=[('all files', '.*'),
('text files', '.txt'),
('image files', '.png;.jpg'), # nope,returns *.png;.jpg
('image files!', '*.png;*.jpg')]) # neither
答案 0 :(得分:3)
如果您尝试将两个或多个后缀与单个文件类型相关联(例如:“图像文件”),则有几种方法可以执行此操作。
您可以在单独的行中指定每个后缀。它们将合并到下拉列表中的一个项目中:
filenames = fd.askopenfilenames(
title="Choose a file",
filetypes=[('all files', '.*'),
('text files', '.txt'),
('image files', '.png'),
('image files', '.jpg'),
])
您也可以将它们指定为元组:
filenames = fd.askopenfilenames(
title="Choose a file",
filetypes=[('all files', '.*'),
('text files', '.txt'),
('image files', ('.png', '.jpg')),
])
答案 1 :(得分:1)
使用元组('.png', '.jpg')
('image files', ('.png', '.jpg')),
答案 2 :(得分:-2)
import tkinter
options = {}
options['defaultextension'] = '.txt'
options['filetypes'] = [('all files', '.*'), ('text files', '.txt'),('asc files', '.asc')]
options['initialdir'] = '.'
file_open = tkinter.filedialog.askopenfile(mode='r', **options)