Этот код генерирует ошибку, и я не уверен, почему и как ее решить?Ошибка обратного отсчета
File "/Users/johnz/Dropbox/PythonWorkspace/BumpersRev1/test3.py",
line 7, in countdown
if self.remaining <= 0:
AttributeError: 'int' object has no attribute 'remaining'`
.
from tkinter import *
# count down timer
def countdown(self, remaining = None):
if remaining is not None:
self.remaining = remaining
if self.remaining <= 0:
pass
else:
self.remaining = self.remaining - 1
self.after(1000, self.countdown)
def main():
# create a Tk window
win1 = Tk()
countdown(90)
mainloop()
main()
Я заменяю свою функцию обратного отсчета кодом, оставляя все остальное на месте. Я добавил импорт. Теперь я получаю новую ошибку: Файл «/Users/johnz/Dropbox/PythonWorkspace/BumpersRev1/test3.py», строка 10, в обратном отсчете после (1000, functools.partial (обратный отсчет (оставшийся))) NameError: name 'after' не определен – user2172181
Я бы ожидал, что вы это сделаете. Вам все равно придется иметь дело с использованием экземпляра Widget с After. К сожалению, я не использую Tkinter достаточно часто, чтобы узнать об этом, но я сразу признал ваше использование себя ошибочным. – Goodies
Также обновите страницу, чтобы получить последнее изменение. Я предположил, что это функция, которую вы уже использовали или можете получить. AFAIK, это в Tkinter.Widget.after – Goodies