PySimple GUI делает эту проблему максимально простой для решения, если вы заранее знаете, какие элементы у вас есть в вашем списке. Возможны неопределенные индикаторы прогресса, но это немного сложнее.
Перед вашим l oop настройка не требуется. Специального итератора делать не нужно. Единственное, что вам нужно сделать, это добавить 1 строку кода внутри l oop.
Внутри l oop добавить вызов - one_line_progress_meter
. Название резюмирует, что это такое. Добавьте этот вызов вверху вашего l oop, внизу, это не имеет значения ... просто добавьте его где-нибудь в цикле.
Вы передаете 4 параметра:
- Название для счетчика (подойдет любая строка)
- Где вы сейчас - текущий счетчик
- Какое максимальное значение счетчика
- Клавиша A " "- уникальная строка, число, все, что угодно.
Вот al oop, демонстрирующий итерацию по списку целых чисел.
import PySimpleGUI as sg
items = list(range(1000))
total_items = len(items)
for index, item in enumerate(items):
sg.one_line_progress_meter('My meter', index+1, total_items, 'my meter' )
Код итерации списка будет быть тем, что у вас есть код l oop. Строка кода, на которой нужно сосредоточиться, которую вы добавите, следующая:
sg.one_line_progress_meter('My meter', index+1, total_items, 'my meter' )
Эта строка кода покажет вам окно ниже. Он содержит статистическую информацию, например, как долго вы используете l oop, и примерное количество времени, которое вам нужно go.
введите описание изображения здесь