Python 询问数字或字母时如何获得有效答案 defmain(): 输入('按enter开始测试…') 计数器=0 总数=0; value=int(输入(“输入temp:或q以退出”)) maxval=值 最小值=值 而价值: 计数器+=1 总数+=价值 如果值>最大值: maxval=值 如果值

Python 询问数字或字母时如何获得有效答案 defmain(): 输入('按enter开始测试…') 计数器=0 总数=0; value=int(输入(“输入temp:或q以退出”)) maxval=值 最小值=值 而价值: 计数器+=1 总数+=价值 如果值>最大值: maxval=值 如果值,python,python-3.x,Python,Python 3.x,问题是当要求temp或q退出时,由于它是intq而不被接受,因为它是str 我试着问一些单独的问题,但是没有正确计算循环数。然后我尝试了ord('q'),它是113。我不知道如何成功地应用该值,或者是否有更好的方法。您应该首先检查其内容,而不是将该值直接转换为int def main (): input('press enter to begin testing...') counter = 0 total = 0; value = int( input ("

问题是当要求
temp
q
退出时,由于它是int
q
而不被接受,因为它是str


我试着问一些单独的问题,但是没有正确计算循环数。然后我尝试了
ord('q')
,它是
113
。我不知道如何成功地应用该值,或者是否有更好的方法。

您应该首先检查其内容,而不是将该值直接转换为
int

def main ():
    input('press enter to begin testing...')

    counter = 0
    total = 0;

    value = int( input ("Enter temp:  or q to quit " ))

    maxval = value
    minval = value

    while value:
        counter += 1
        total += value

        if value > maxval:
            maxval = value
        if value < minval:
            minval = value

        value = int( input ("Enter temp:  or q to quit "))

    print ( 'Total is:  ', total)
    print ('Counter is: ', counter)

    if counter != 0:
        print ('Average is: ', total / counter)
        print ('Minimum is:  ', minval)
        print ('Maximum is:   ', maxval)

不要将值直接转换为
int
,应首先检查其内容:

def main ():
    input('press enter to begin testing...')

    counter = 0
    total = 0;

    value = int( input ("Enter temp:  or q to quit " ))

    maxval = value
    minval = value

    while value:
        counter += 1
        total += value

        if value > maxval:
            maxval = value
        if value < minval:
            minval = value

        value = int( input ("Enter temp:  or q to quit "))

    print ( 'Total is:  ', total)
    print ('Counter is: ', counter)

    if counter != 0:
        print ('Average is: ', total / counter)
        print ('Minimum is:  ', minval)
        print ('Maximum is:   ', maxval)

非常感谢你。那很有帮助,非常感谢。这很有帮助