简单:Python要求输入两次

时间:2013-01-13 09:04:43

标签: python python-3.3

这是我的代码:

def calculator(value1,value2):

    function=input("Function?")
    if function=="*":
     return value1*value2
    if function=="/":
     return value1/value2
    if function=="+":
     return value1+value2
    if function=="-":
     return value1-value2
a=float(input("value 1:"))
b=float(input("value 2:"))
calculator(a,b)
print(calculator(a,b))

Python Shell上的输出

value 1:5
value 2:5
Function?/
Function?/
1.0

所以我只想知道它为什么要求输入两次功能,而不是一次。这可能是一个愚蠢的问题,但感谢您的回答。

2 个答案:

答案 0 :(得分:5)

这两行导致了您的问题:

calculator(a,b)
print(calculator(a,b))

您正在拨打calculator两次,因此要求您输入两次。

要修复代码,只需将calculator(a, b)的结果存储在变量中,然后将其打印出来:

result = calculator(a, b)
print(result)

答案 1 :(得分:2)

你问Python print(calculator(a,b)) - 这意味着Python必须两次评估该函数。如果您只想输入一次,请将calculator(a,b)存储在变量中并打印该变量。