@simbullar

Как решить ошибку ValueError: invalid literal for int() with base 10: 'PY_VAR0'?

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

Ошибка:
number = int(number)
ValueError: invalid literal for int() with base 10: 'PY_VAR0'

Код:
from tkinter import *
from tkinter import messagebox
import random
import sys, os

window = Tk()
window.geometry("300x300")
window.title("Random number generator")

random2fix = '0'
toRandom = 10
number = StringVar()


def NotTruePrint():
    messagebox.showinfo("STOP", "Please, print right")

window.minsize(300, 300)
window.maxsize(300, 300)

def SetMaxNumber():
    global number
    number = str(number)
    number = int(number)
    try:
        toRandom = number
        number = str(number)
        window.update()
    except(TypeError, ValueError):
        NotTruePrint()
        number = StringNumber(number)

def generate():
    random2fix = str(random.randrange(0, toRandom, 1))
    txt.configure(text=random2fix)
    window.update()

ent = Entry(window)
toRand = ent
btn = Button(window, text="Generate", command=generate)
btn.grid(column=0, row=0)
txt = Label(window, text=random2fix, font=("Roboto Bold", 30))
entry1 = Entry(textvariable=number)
entry1.place(relx=.5, rely=.5, anchor="c")
btn2 = Button(text="Set max number", command=SetMaxNumber)
btn2.place(relx=.5, rely=.6, anchor="c")
btn.pack()
txt.pack()
window.mainloop()

Поможете?
  • Вопрос задан
  • 147 просмотров
Решения вопроса 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Вы пытаетесь привести к типу int объект класса StringVar, а не хранящееся в нём значение.
Ответ написан
Комментировать
Vindicar
@Vindicar
RTFM!
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы