不是浮点有效。消息错误Python

时间:2014-05-03 06:25:54

标签: python error-handling tkinter turtle-graphics

好吧,我正在学习如何使用Python,我正在使用乌龟图形来做一个菜单,在一个部分我要求一个数字

def getNumber():
    return screen.numinput("Title"," Enter a number...")

运行程序,当我调用此函数并插入一个字母或什么都没有时,我收到一个错误:“不是浮点有效。请在窗口中重试”。那么,有没有办法改变消息?我想把这条消息改成“输入一个数字,而不是一封信!”或类似的东西。

2 个答案:

答案 0 :(得分:0)

编辑:

import sys, tkMessageBox

def getNumber():
    try:
        return screen.numinput('Title', 'Enter a number...')
    except:
        tkMessageBox.showerror(title='Wrong Input',message='Enter a valid number!')
        sys.exit(1)

答案 1 :(得分:0)

所有用户输入始终为字符串。您必须将字符串显式转换为数字:

result = float(getNumber())

-OR -

def getNumber():
    s = screen.numinput("Title"," Enter a number...")
    return float(s)