Как можно сократить/оптимизировать эту функцию?
Только начал изучать Python, это часть моей первой программы, как можно сократить/оптимизировать эту часть кода? Функция работает с библиотекой tkinter и time.
def start():
global value1, value2, value3, RB
global exc1, exc2, exc3, exc4, exc5, exc6
while True:
exc1 = value1 // 10 % 10
exc2 = value1 % 10
exc3 = value2 // 10 % 10
exc4 = value2 % 10
exc5 = value3 // 10 % 10
exc6 = value3 % 10
if value2 == 0 and value3 == 0 and value1 > value4:
value1 = value1 - 1
value2 = value2 + 59
value3 = value3 + 60
if value3 == 0 and value2 > value5:
value2 = value2 - 1
value3 = value3 + 60
numbers_false()
if exc1 == 0:
zero1.place(x=260, y=220)
elif exc1 == 1:
one1.place(x=260, y=220)
elif exc1 == 2:
two1.place(x=260, y=220)
elif exc1 == 3:
three1.place(x=260, y=220)
elif exc1 == 4:
four1.place(x=2640, y=220)
elif exc1 == 5:
five1.place(x=260, y=220)
elif exc1 == 6:
six1.place(x=260, y=220)
elif exc1 == 7:
seven1.place(x=260, y=220)
elif exc1 == 8:
eight1.place(x=260, y=220)
elif exc1 == 9:
nine1.place(x=260, y=220)
if exc2 == 0:
zero2.place(x=290, y=220)
elif exc2 == 1:
one2.place(x=290, y=220)
elif exc2 == 3:
two2.place(x=290, y=220)
elif exc2 == 3:
three2.place(x=290, y=220)
elif exc2 == 4:
four2.place(x=290, y=220)
elif exc2 == 5:
five2.place(x=290, y=220)
elif exc2 == 6:
six2.place(x=290, y=220)
elif exc2 == 7:
seven2.place(x=290, y=220)
elif exc2 == 8:
eight2.place(x=290, y=220)
elif exc2 == 9:
nine2.place(x=290, y=220)
if exc3 == 0:
zero3.place(x=340, y=220)
elif exc3 == 1:
one3.place(x=340, y=220)
elif exc3 == 2:
two3.place(x=340, y=220)
elif exc3 == 3:
three3.place(x=340, y=220)
elif exc3 == 4:
four3.place(x=340, y=220)
elif exc3 == 5:
five3.place(x=340, y=220)
elif exc3 == 6:
six3.place(x=340, y=220)
elif exc3 == 7:
seven3.place(x=340, y=220)
elif exc3 == 8:
eight3.place(x=340, y=220)
elif exc3 == 9:
nine3.place(x=340, y=220)
if exc4 == 0:
zero4.place(x=370, y=220)
elif exc4 == 1:
one4.place(x=370, y=220)
elif exc4 == 2:
two4.place(x=370, y=220)
elif exc4 == 3:
three4.place(x=370, y=220)
elif exc4 == 4:
four4.place(x=370, y=220)
elif exc4 == 5:
five4.place(x=370, y=220)
elif exc4 == 6:
six4.place(x=370, y=220)
elif exc4 == 7:
seven4.place(x=370, y=220)
elif exc4 == 8:
eight4.place(x=370, y=220)
elif exc4 == 9:
nine4.place(x=370, y=220)
if exc5 == 0:
zero5.place(x=420, y=220)
elif exc5 == 1:
one5.place(x=420, y=220)
elif exc5 == 2:
two5.place(x=420, y=220)
elif exc5 == 3:
three5.place(x=420, y=220)
elif exc5 == 4:
four5.place(x=420, y=220)
elif exc5 == 5:
five5.place(x=420, y=220)
elif exc5 == 6:
six5.place(x=420, y=220)
elif exc5 == 7:
seven5.place(x=420, y=220)
elif exc5 == 8:
eight5.place(x=420, y=220)
elif exc5 == 9:
nine5.place(x=420, y=220)
if exc6 == 0:
zero6.place(x=450, y=220)
elif exc6 == 1:
one6.place(x=450, y=220)
elif exc6 == 2:
two6.place(x=450, y=220)
elif exc6 == 3:
three6.place(x=450, y=220)
elif exc6 == 4:
four6.place(x=450, y=220)
elif exc6 == 5:
five6.place(x=450, y=220)
elif exc6 == 6:
six6.place(x=450, y=220)
elif exc6 == 7:
seven6.place(x=450, y=220)
elif exc6 == 8:
eight6.place(x=450, y=220)
elif exc6 == 9:
nine6.place(x=450, y=220)
value3 = value3 - 1
window.update()
if value3 == value6 - 1 and value2 == value5 and value1 == value4 and RB is True:
visible_false()
SC2.place(x=322, y=300)
Btn_get_continue.place_forget()
Btn_get_reset.place_forget()
Btn_get_stop.place_forget()
break
elif RB is False:
break
time.sleep(1)
Источник: Stack Overflow на русском