首页 > 解决方案 > 在插入整数时显示错误

问题描述

我尝试使用 try 和 except,现在它总是给出错误。

def appendvalues():
    try:
        global temp1
        d = entry1.get()
        temp1.append(d)
        temp1 = [int(i) for i in temp1]

        global humidity
        e = entry2.get()
        humidity.append(e)
        humidity = [int(j) for j in humidity]

        global years
        f = entry3.get()
        years.append(f)
        years = [int(a) for a in years]

        entry1.delete(0, 'end')
        entry2.delete(0, 'end')
        entry3.delete(0, 'end')
    except ValueError:
        tkinter.messagebox.showinfo("error", "Insert numerical values")

我上传了图片链接:https ://gyazo.com/9f731b983a8cf9096b184b5dfe181282

在此处输入图像描述

标签: pythonpython-3.xtkinter

解决方案


您应该在附加到列表之前转换为整数。

此外,如果您希望所有列表都具有相应的值,则在所有转换成功之前,您不应附加到任何列表。

def appendvalues():
    try:
        d = int(entry1.get())
        e = int(entry2.get())
        f = int(entry3.get())

        global temp1, humidity, years
        temp1.append(d)
        humidity.append(e)
        years.append(f)

        entry1.delete(0, 'end')
        entry2.delete(0, 'end')
        entry3.delete(0, 'end')
    except ValueError:
        tkinter.messagebox.showinfo("error", "Insert numerical values")

推荐阅读