2016-10-05 13 views
-1

私が作っている電卓に少し問題があります。私はそれを追加、乗算、除算、減算することができる場所にする必要があります。私のコードは次のようになります。Pythonで "ValueError:基数10のint()のリテラルが無効です"を解決するには?

a= int(input("First Number: ")) 

    int(input("First Operator: ")) 

    b= int(input("Second Number: ")) 

    if (operator == "+"): 
     c=a+b 
    elif(operator == "-"): 
     c=a-b 
    elif(operator == "*"): 
     c=a*b 
    elif(operator == "-"): 
     c=a/b 



    print(c) 

私が入るたびにどちらかそれは私に与える演算子として+,-,*,or/この:

operator=int(input("Operator: ")) 
    ValueError: invalid literal for int() with base 10: '/' 

私はこれは私が整数が必要であることを意味知っているが、私はどのように修正することができますそれ?

+0

intに変換しないでください! 'operator = input(" Operator: ")' – zvone

答えて

0

char変数(この場合は演算子)をint型に変更しようとしています。コンパイラはintで演算子を回すことができないので、このエラーが返されます。演算子と呼ばれる変数を宣言するだけで、コードは次のようになります。

a= float(input("First Number: ")) 

operator =input("First Operator: ") 

b= float(input("Second Number: ")) 

if (operator == "+"): 
    c=a+b 

elif(operator == "-"): 
    c=a-b 

elif(operator == "*"): 
    c=a*b 

elif(operator == "-"): 
    c=a/b 
0

オペレータがintとしてキャストされています。これがケースではありません。

int(input("First Operator: "))

はint型(...)なしで試してみてください。

+0

ありがとうございました。 –

+1

助けてくれてうれしいです。これを解決済みとマークできますか?ありがとう。 –

関連する問題