После нажатия на кнопку, нужно добавлять в переменную damage рандом. числа и суммировать их

import random
from tkinter import *

root = Tk()
root.geometry("600x400+200+100")

credit = 0
damage = 0

def random_damage():
    damage = random.randrange(30, 90)
    print(damage)

btn_one = Button(text="btn", width="20", command=random_damage).pack()

root.mainloop()

Не могу сделать так, чтобы рандом. числа суммировались и сохранялись в переменной


Ответы (1 шт):

Автор решения: DGDays
import random
from tkinter import *

root = Tk()
root.geometry("600x400+200+100")

credit = 0
damage = 0

def random_damage():
    global damage
    if damage == 0:
        damage = random.randrange(30, 90)
        print(damage)
    elif damage > 0:
        dam = random.randrange(30, 90)
        damage += dam
        print(damage)

btn_one = Button(text="btn", width="20", command= lambda: random_damage()).pack()

root.mainloop()

Если у вас была проблема с тем, что функция не выполнялась, то вы забыли скобки после random_damage при нажатии кнопки. Так же когда присваиваете функцию кнопке, то после command = лучше прописывать lambda: функция(), это нужно чтобы функция не использовалась сразу при создании окна.

→ Ссылка