0
opに値を入力しようとすると、常にelse文が実行されます。プログラミングが正しく動作しないのはなぜですか? if文が評価されておらず、Pythonのelse文に直接ジャンプします
ここで問題は何ですか?私はあなたが最初の2つの数字を望んで操作を入力する場合、また、あなたが整数としてtypped番号をキャストする必要があり、正常に動作しているプログラミング
print "Basic Calculator"
print "Options:"
print "For addition, type add"
print "For subtraction, type sub"
print "For multiplication, type mul"
print "For division, type div"
op = raw_input()
num1 = raw_input("Enter first number: ")
num2 = raw_input("Enter second number: ")
if op == 'sum':
print "The sum is: ", num1 + num2
elif op == 'sub':
if num1 > num2:
print "The subtraction is: ", num1 - num2
else:
print "The subtraction is: ", num1 - num2
elif op == 'mul':
print "The product is: ", num1 * num2
elif op == 'div':
print "The division is: ", num1/num2
else:
print "You entered an incorrect operation"
それはちょうど私にとって完璧に動作します:) –
私はタイプキャスティングを除いてここに何の問題も見ませんでした。あなたが与えた入力とそれぞれの出力を提供してください – sbk
あなたは**平等操作が評価されていないことをどのように証明していますか?つまり、通常は関数を追加する必要があります。 'def compare(val、target):print"%rと%rの比較 "%(val、target); return val == target'し、その関数を 'if'文に入れて副作用(print文)を探します。 –