在Python中处理异常用户输入的正确方法是什么?

时间:2017-02-21 23:13:21

标签: python python-2.7 exception-handling

我对python很陌生,想知道用户输入处理异常的最佳方法是什么。我有两个例子,我在学习期间提出了

示例1:

def userInput():
while True:
    try:
        balance= float(raw_input("What is your balance: "))
        break
    except ValueError:
        print "Please enter valid input!"
        continue
    try:
        interestR= float(raw_input("Please enter interest as decimal: "))
        break
    except ValueError:
        print "Please enter valid input!"
        continue
    try:
        payRate= float(raw_input("Please enter min payment rate as decimal: "))
        break
    except ValueError:
        print "Please enter valid input!"
        continue

    return balance, interestR, payRate

示例2:

def userInput():
while True:
    try:
        balance= float(raw_input("What is your balance: "))
        interestR= float(raw_input("Please enter interest as decimal: "))
        payRate= float(raw_input("Please enter min payment rate as decimal: "))
        break
    except ValueError:
        print "Please enter valid input!"
        continue
return balance, interestR, payRate

我要求三个输入。在第一个示例中,如果用户输入三个输入之一的无效信息,则他们只需要为该特定输入重复。在第二个示例中,如果用户在三者中的任何一个中输入无效输入,则他们必须重新启动所有三个输入。使用用户输入处理异常时最佳做法是什么。我应该有一个独立的用户输入功能吗?是否有更简洁的方法来编码?对不起这个基本问题。

0 个答案:

没有答案