如果没有达成声明

时间:2015-11-04 19:27:53

标签: python python-2.7 if-statement

我是python的初学者。我下面简单的三个if语句似乎只能达到第一个'if'而奇怪的是最后一个'if'。 而且奇怪的是,当我输入一个高于9的数字时,高数字变量将不会存储超过该数字的数字。我已经四次检查了缩进。发生了什么事?

tldr;只是试图创建一个简单的python脚本来计算一系列输入中的高数字和一系列输入中的低数字。输入完成后输入完毕。

#!usr/bin/python

number = 0 #init number variable to zero
highNum = 0 #init the highest number to 0
lowNum = 99 #init the lowest number to 99

while number != 'done':
        number = raw_input('Enter a Number: ')

        if number > highNum:
                highNum = number

        if number < lowNum:                     
                lowNum = number

        if number == "done":
                break

print "Low Number is : ", lowNum
print "High Number is: ", highNum

我得到的输出是:

Enter a Number: 16
lowNum :  99
highNum:  16

Enter a Number: 17
lowNum :  99
highNum:  17

Enter a Number: 9
lowNum :  99
highNum:  9

Enter a Number: 17
lowNum :  99
highNum:  9

1 个答案:

答案 0 :(得分:1)

您需要将输入转换为整数数据类型,以便将其与其他整数进行比较..

while True:
    userTyped = raw_input('Enter a Number: ')
    if userTyped == "done":
        break
    else:
        number = int(userTyped)

    if number > highNum:
        highNum = number
    if number < lowNum:                     
        lowNum = number


print "Low Number is : ", lowNum
print "High Number is: ", highNum