ユーザーが入力した値を加算、減算、乗算、除算、平方根の 5 つのプロセスを実行できる電卓を作成しようとしています。私がやったすべてのことですが、値を!= floatとintにしようとすると、入力値がfloatとintの場合にエラーが発生します... value == strを試した後、エラーが発生しました。しかし、それでもうまくいきません...誰か助けてください。
例えば
if value[0] != 'float' or value[0] != 'int' or value[1] != 'float' or value[1] != int':
return 'the input value is not correct
上記の2つの両方を試しましたが、うまくいかないようです。プログラムのように、float、int、および string の間を読み取ることができません。
入力したら
calculator('+', 3, 4)
結果はエラーを言います.....
'print type(value[0], [1]) を持っている理由は、発生し続けるエラーのタイプを確認するためです。`
def calculator(sym, *t):
value = tuple(t)
n = len(value)
print type(value[0])
print type(value[1])
if value[0] != 'float' or value[0] != 'int' or value[1] != 'float' or value[1] != int':
return 'the input value is not correct.'
else:
if sym == '+':
if len(value) != 2:
return 'The input value is not correct.'
else:
return float(value[0] + value[1])
elif sym == '-':
if len(value) != 2:
return 'The input value is not correct.'
else:
return float(value[0] - value[1])
elif sym == '/':
if len(value) != 2:
return 'The input value is not correct.'
elif value[1] == 0:
return 'The input value is not correct.'
else:
return float(value[0] / value[1])
elif sym == '*':
if len(value) != 2:
return 'The input value is not correct.'
else:
return float(value[0] * value[1])
elif sym == 'sqrt':
if len(value) != 1:
return 'The input value is not correct.'
elif value[0] < 0:
return 'The input value is not correct.'
else:
return value[0] ** 0.5
else:
return 'The input value is not correct.'
`