Итак, по сути, это программа для изучения слов на флипкартах. В нем есть французско-английский словарь, хранящийся в файле .csv, пользователь может решить в графическом интерфейсе, нажимать ли «галочку» («Я знаю этот словарь») или нет. Если он знает, словарный запас удаляется из нового файла «words_to_learn.csv», чтобы сохранить его прогресс в обучении. Программа будет искать этот файл при запуске и выбирать french_words.csv только в том случае, если другой файл не существует.
Теперь, когда «words_to_learn.csv» имеет хотя бы 1 словарную пару при запуске и пользователь знает эту пару, нажимает галочку для следующего словаря, программа сталкивается с ошибкой, поскольку не может выбрать из пустого файла .csv. Я мягко исправил это, внедрив исключение «pandas.errors.EmptyDataError» в мою цепочку «try-Exception...» в начале. Но я хочу, чтобы пользователь знал, что происходит, чтобы отобразить на tkInter, что он закончил обучение, но может перезапустить программу, чтобы заново выучить весь словарный запас. Как мне это реализовать? код ниже:
try:
vocab = pandas.read_csv("./data/words_to_learn.csv")
except pandas.errors.EmptyDataError:
vocab = pandas.read_csv("./data/french_words.csv")
os.remove("./data/words_to_learn.csv")
except FileNotFoundError:
vocab = pandas.read_csv("./data/french_words.csv")
to_learn = vocab.to_dict(orient="records")
Функция галочки срабатывает, когда пользователь нажимает кнопку «галочка», чтобы удалить из «words_to_learn.csv»:
def card_checkmark():
global current_card, flip_timer
window.after_cancel(flip_timer)
current_card = random.choice(to_learn)
canvas.itemconfig(canvas_image, image=card_front)
canvas.itemconfig(card_title, text="French", fill="black")
canvas.itemconfig(card_word, text=current_card["French"], fill="black")
to_learn.remove(current_card)
data = pandas.DataFrame(to_learn)
data.to_csv("data/words_to_learn.csv", index=False)
flip_timer = window.after(3000, flip_card)
Подробнее здесь: https://stackoverflow.com/questions/793 ... ave-to-res
Отловить исключение, вызванное пустым CSV-файлом... сообщить пользователю, что ему необходимо перезагрузить компьютер ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Можно ли прослушать изменение стиля, вызванное файлом стиля .css, из Java Script?
Anonymous » » в форуме Html - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Можно ли прослушать изменение стиля, вызванное файлом стиля .css, из Java Script?
Anonymous » » в форуме Jquery - 0 Ответы
- 34 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Можно ли прослушать изменение стиля, вызванное файлом стиля .css, из Java Script?
Anonymous » » в форуме CSS - 0 Ответы
- 28 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Можно ли прослушать изменение стиля, вызванное файлом стиля .css, из Java Script?
Anonymous » » в форуме Javascript - 0 Ответы
- 16 Просмотры
-
Последнее сообщение Anonymous
-