почему мне выдаёт ошибку TabError
Хотел сделать симулятор открытия бокса на Python используя tkinter.
import tkinter as tk
from random import randint
from time import sleep
chance = randint(0,100)
def open():
if chance > 90 and chance < 101:
resp = ('leon')
elif chance > 45 and chance < 91:
resp = ('nita')
elif chance > 0 and chance < 46:
resp = ('shelly')
res.set(resp)
win = tk.Tk()
win.resizable(False,False)
win.geometry('100x100')
win.title('Box Leon Farm')
win['bg'] = 'yellow'
res = tk.StringVar()
mainlb = tk.Label(text = 'Leon Farm',bg = 'yellow')
lb = tk.Label(textvariable=res)
btn =tk.Button(text = 'Open', height = 3,width = 6,command=open)
mainlb.pack()
lb.pack()
btn.pack()
tk.mainloop()
Все так, но выдаёт ошибку:
TabError, проверить наличие пространства и табов.
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
- Правила оформления Python-кода:
Отступы. Рекомендуется использовать4 пробелана каждый уровень отступа. Python 3 запрещает смешивание табуляции и пробелов в отступах.
Код, в котором используются и те, и другие типы отступов, должен быть исправлен так, чтобы отступы в нем были расставлены только с помощью пробелов.
- Вы генерируете случайное целое число N, 0 ≤ N ≤ 100,
а в функции
open(), значение0(ноля) не обрабатываете.
import tkinter as tk
from random import randint
#from time import sleep
#chance = randint(0, 100)
def open():
chance = randint(0, 100) # +++
if chance > 90 and chance < 101:
resp = ('leon')
elif chance > 45 and chance < 91:
resp = ('nita')
# elif chance > 0 and chance < 46:
elif chance >= 0 and chance < 46: # +++
resp = ('shelly')
res.set(resp)
win = tk.Tk()
win.resizable(False, False)
win.geometry('150x150')
win.title('Box Leon Farm')
win['bg'] = 'yellow'
res = tk.StringVar()
mainlb = tk.Label(text='Leon Farm', bg='yellow')
lb = tk.Label(textvariable=res)
btn =tk.Button(text='Open', height=3, width=6, command=open)
mainlb.pack()
lb.pack()
btn.pack()
tk.mainloop()
