Не удается выбрать несколько файлов в tkinter

#python #tkinter

Вопрос:

Я не могу выбрать несколько файлов с помощью tkinter askopenfilenames в Linux. Я могу выбрать несколько файлов в Windows, но не в Linux.

 path = list(askopenfilenames(filetypes=('Images','*.jpg *.jpeg *.png')))
 

Комментарии:

1. Я уже импортировал его из filedialog: from tkinter.filedialog import askopenfilenames

2. в python3 он уже возвращает список, нет необходимости добавлять конструктор списка

3. Обратная связь? Сообщение об ошибке?

4. Никакой обратной связи или ошибки. Я могу выбрать только один файл

5. @Mayank Я использовал строку кода, которую вы предоставили здесь, как есть, вместе с простой функцией обратного вызова и кнопкой на Windows. Когда я нажимаю кнопку, чтобы открыть диалоговое окно файла, я получаю сообщение об ошибке: _tkinter.TclError: bad file type "Images", should be "typeName {extension ?extensions ...?} ?{macType ?macTypes ...?}?" . Если я обновлю строку следующим образом: path = list(askopenfilenames(filetypes=[('Images','*.jpg *.jpeg *.png')])) все работает. Покажите свой рабочий код здесь, покажите, как именно вы используете диалоговое окно файла.

Ответ №1:

Следующий код позволит вам выбрать несколько файлов. Вам нужно удерживать управление или переключать, когда вы выбираете каждый файл

 import tkinter as tk
from tkinter import filedialog

root = tk.Tk()
root.withdraw()

path = list(filedialog.askopenfilenames(filetypes=[('Images','*.jpg *.jpeg *.png')]))
print(path)
 

Комментарии:

1. Пришлось задержать смену. Извините, я немного новичок в Linux.