简单:Python要求输入两次

kua*_*uan 0 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))
Run Code Online (Sandbox Code Playgroud)

Python Shell上的输出

value 1:5
value 2:5
Function?/
Function?/
1.0
Run Code Online (Sandbox Code Playgroud)

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

Ble*_*der 5

这两行导致您的问题:

calculator(a,b)
print(calculator(a,b))
Run Code Online (Sandbox Code Playgroud)

你打了calculator两次电话,所以要求你输入两次.

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

result = calculator(a, b)
print(result)
Run Code Online (Sandbox Code Playgroud)

  • @ user1973796:N [o](http://4.bp.blogspot.com/_D_Z-D2tzi14/S8TRIo4br3I/AAAAAAAACv4/Zh7_GcMlRKo/s400/ALOT.png)问题. (3认同)