python - 在我的输入框中添加字母?

标签 python

当我在输入框中输入字母或小数时,我收到此错误“ValueError:以 10 为基数的 int() 的无效文字:'g'”。输入框只接受整数,我想知道当他们尝试输入字母时是否可以给出一条消息说“您必须输入数字”或类似的内容。这是我的更多代码:

def checkAnswer():
    mainAnswer = entry1.get() 

    if len(mainAnswer) == 0:
        messagebox.showwarning(message='-You must enter some numbers first!')
        return
    if int(mainAnswer) != answer:
        messagebox.showwarning(message='Sorry...the correct answer is: ' + str(answer))
    else:
        messagebox.showinfo(message='Correct!')

最佳答案

出现的异常是当您尝试执行 int(mainAnswer) 时,mainAnswer 不是数字。解决这个问题的一种方法是这样做:

try:
    int(mainAnswer)
except ValueError:
    messagebox.showwarning(message="You must enter a number")
    return

# the rest of your code

关于python - 在我的输入框中添加字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19015563/

相关文章:

python - Tornado 的 XSRF 保护

python - 特定物体识别。 [Python]

python - 如何将随机森林中选定的特征转换为新列表

python - 无法定位元素: python + selennium

python - 在 pandas 数据框中查找包含子字符串的值

python - 另一个函数的 lambda 函数,但强制固定参数

python - 仅外部加入 python pandas

python - 使用 Python 在同一进程中运行三个命令

python - java.util.zip.Inflater 的 Python 等价物是什么?

python - 如何在 Ubuntu 上构建 pysparse