Как просмотреть данные EXIF в графическом интерфейсе в виде списка?

#python-3.x #tkinter

Вопрос:

Мне нужно загрузить данные EXIF с изображения и визуализировать их на экране. То, что я сейчас делаю, это:

 def get_exif():
    global image_object
    exif = image_object.getexif()
    if exif is None:
        return
    exif_data = {}
    for tag_id, value in exif.items():
        tag = TAGS.get(tag_id, tag_id)
        if tag == "GPSInfo":
            gps_data = {}
            for t in value:
                gps_tag = GPSTAGS.get(t, t)
                gps_data[gps_tag] = value[t]
            exif_data[tag] = gps_data
        else:
            exif_data[tag] = value

    print(exif_data)
    if exif_data == {}:
        alert = "No EXIF data availabale"
        exif_lbl.configure(text=alert)
    else:
        exif_lbl.configure(text=exif_data)
 

Где exif_lbl-это:

 exif_lbl = Message(exif_frame, font=("helvetica", 18), aspect=200)
exif_lbl.grid(row=1, column=0)
 

Я не уверен, что сообщение-это правильный способ визуализации блока текста.
Я вижу данные EXIF примерно так:
введите описание изображения здесь

Но моя цель-увидеть это таким на моем экране:введите описание изображения здесь

с помощью другой функции я могу получить тег и данные отдельно, но я не могу видеть их на экране в виде списка. Это и есть функция:

 for tag_id in exifdata:
    # get the tag name, instead of human unreadable tag id
    tag = TAGS.get(tag_id, tag_id)
    data = exifdata.get(tag_id)
    # decode bytes
    if isinstance(data, bytes):
        data = data.decode()
    print(f"{tag:25}: {data}")
 

Как я могу отобразить данные в виде «списка»? Является ли сообщение правильным способом сделать это? Или мне следует использовать список? Спасибо

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

1. Вы пробовали составить список из ваших инструкций по печати, а затем установить текст в список, к которому присоединяются новые строки?