あなたが分かるように、私はかなり初心者のPythonコーダーです。現在のところ、私はいくつかの小さなテストプログラムを作成しており、大きなプログラムを試す前に、すべてのインデントを確実にしようとしています。 私は、入力が整数でない場合、プログラムは整数を入力する必要があるというメッセージを出力するようにしています。しかし、現在のコードでは、答えにかかわらず「正解でなければならない」と答えています。「整数を入力してください」というメッセージが出力されます。私は何を間違えたのですか?コードは次のとおりです。整数を入力すると、これは整数ではないのはなぜですか? (Python)
a = input("What is your age?")
b = 7
c = ((a-2) * 4) +25
if a == int:
print "Your age in a small dog's years is:", ((a-2) * 4)+28
print "Your age in a medium sized dog's years is:", ((a-2) * 6)+27
print "Your age in a big dog's years is:", ((a-2) * 9)+22
print "Your age in cat years is:", c
print "Your age in guinea pig years is:", a * 15
print "Your age in hamster years is:", a * 20
print "Your age in pig years is:", ((a-1) * 4)+18
print "Your age in goldfish years is:", ((a-1) * 8)+188
print "Your age in cow years is:", ((a-1) * 4)+14
print "Your age in horse years is:", a * 3
print "Your age in goat years is:", ((a-1) * 6)+18
print "Your age in rabbit years is:", ((a-1) * 8)+20
print "Your age in chinchilla years is:", ((a-1) * 7)+17
elif a != int:
print "You must enter an integer!"
それ以外の場合は、これを破棄しているように見えます。おかげさまで
'==のint'あなたは変数の型を確認する方法ではありません。 – Barmar
https://stackoverflow.com/questions/3501382/checking-whether-a-variable-is-an-integer-or-not – Pavel
入力が整数int(input())であることを確認してください。あなたの現在の実装で 'type(a)をチェックすると、文字列' – jmugz3