python-3.x 如何将StringVar转换为Integer [重复]

s3fp2yjn  于 2023-05-19  发布在  Python
关注(0)|答案(2)|浏览(127)

此问题已在此处有答案

How do I parse a string to a float or int?(32个回答)
5年前关闭。
我在写一个基本的数字猜谜游戏,我想把程序放到一个窗口里。一切正常,除了当我试图访问在entry_box中创建的变量,然后将其与int进行比较时。
现在,从entry_box出来的变量是StringVar。如何将其转换为整数以便比较变量?

# Creates the entry box and variable that will be used in it
# answer = StringVar()
entry_box = Entry(window, textvariable = answer, width = 25, bg = 'white') .place(x = 350, y = 0)

num1 = answer.get()

所以现在的答案是一个StringVar,我试图将它转换为一个整数。任何帮助将不胜感激。

fxnxkyjh

fxnxkyjh1#

使用int():

num1 = int(answer.get())
xzlaal3s

xzlaal3s2#

最简单的方法是在Python中将 any 字符串转换为整数的方法:

num1 = answer.get() # now we have a str
num2 = int(num1) # now we have an int

当然,如果用户在Entry中输入了类似spam的内容,或者根本没有输入,那么第二行将引发ValueError。你必须决定你想如何处理这件事。
(For一个更高级的项目,你可能会考虑使用IntVar而不是StringVar和/或使用手动Tkinter验证,但对于一个简单的练习,你可能不需要。

相关问题