Как получить выбор пользователя из диалогового окна открытия файла tkinterPython

Программы на Python
Anonymous
Как получить выбор пользователя из диалогового окна открытия файла tkinter

Сообщение Anonymous »

Похоже на этот вопрос, но немного отличается.
Я хочу различать два (или более) типа файлов, которые имеют общий суффикс, но внутренне различаются.
Пока у меня есть что-то вроде этого:

Код: Выделить всё

## import packages ##
import tkinter as tk
from tkinter import filedialog as fd

## Define file types and sufixes ##
FT_Labels=['Type10',
'Type20']
FT_suffixes=['*.xml','*.csv']
FILE_TYPES=[]
for Label,Suffix in zip(FT_Labels,FT_suffixes):
FILE_TYPES.append((Label,Suffix))

# Build the tuple for file dialog dropdown #
FILE_TYPES=tuple(FILE_TYPES)

## Get the file path ##
File_path = fd.askopenfilename(title='Select the file',
filetypes=FILE_TYPES)
## Detect the file type and process it##
if '.xml' in File_path:
# TESCAN file #
Type = 'XML'
#processAsXML(File_path)
elif '.csv' in File_path:
Type = 'CSV'
#processAsCSV(File_path)
Таким образом я определяю тип файла по суффиксу. Но в то время, когда мне нужно будет обрабатывать XML-файлы с разными структурами, этот подход не сработает.
Есть ли способ прочитать индекс выбранного пользователем фильтра в раскрывающемся меню? И в openfile, и в savefile
Что-то вроде MATLAB [file,location,INDX] = uigetfile(...), где INDX — это индекс выбранного фильтра.

Подробнее здесь: https://stackoverflow.com/questions/798 ... pen-dialog

Вернуться в «Python»