2016-04-04 17 views
1

Bunu çalıştırdığımda, adı doğru girebiliyorum ancak yüksekliğe girmeye başladığımda, değiştirilemez bir tür hatası alıyorum.Unorderable types int ve string

floatHeight = 0 
floatWeight = 0 
strName = "" 

strName = input("What is your name? ") 



while floatHeight <= 1 or floatHeight >= 3: 
    floatHeight = input("What is your height in metres? ") 
while floatWeight <= 10 or floatWeight >= 400: 
    floatWeight = input("What os your weight in kilograms? ") 
print(floatWeight) 
print(floatHeight) 

cevap

1

Sen float içine girilen değerleri dönüştürmek gerekir:

while floatHeight <= 1 or floatHeight >= 3: 
    floatHeight = float(input("What is your height in metres? ")) 
while floatWeight <= 10 or floatWeight >= 400: 
    floatWeight = float(input("What os your weight in kilograms? ")) 

Aksi floatHeight veya floatWeight bir dize olacaktır. Neyse ki, Python 3'te dizeleri ve floatları artık karşılaştıramazsınız.

+0

Bu sizin için çalışıyor mu? –