python程序不会按顺序打印提示

时间:2017-11-24 14:08:18

标签: python prompt

count=1
while count<6:
   number1=int(input('Enter first number: '))
   count+=1
   if count==2:
     number2=int(input('Enter second number: '))
     count+=1
   elif count==3:
     number3=int(input('Enter third number: '))
     count+=1
   elif count==4:
        number4=int(input('Enter fourth number: '))
        count+=1
   elif count==5:
        number5=int(input('Enter fifth number: '))
        count+=1
   else:
        print('                            ')

当我运行它时,它会提示第一个数字,然后是第二个,第四个,第一个。我做错了什么不是1到5的顺序?谢谢。

4 个答案:

答案 0 :(得分:1)

以下代码按预期工作:

count=0
while count<6:
   count+=1
   if count == 1:
       number1=int(input('Enter first number: '))
   elif count==2:
     number2=int(input('Enter second number: '))
   elif count==3:
     number3=int(input('Enter third number: '))
   elif count==4:
        number4=int(input('Enter fourth number: '))
   elif count==5:
        number5=int(input('Enter fifth number: '))
   else:
        print('                            ')

您的代码没有的原因是因为循环将评估代码然后继续,IE在count == 2时只有该语句将在该循环中运行;之后循环将再次运行,这将再次显示

  

输入第一个号码:

另外,因为你在开始时给你的计数器变量加1,当给出输入时你就为每个循环加了2

答案 1 :(得分:0)

如果第一次进入,你就忘了添加条件。

我会这样重写:

count=1
while count<6:
    if count==1:
        number1=int(input('Enter first number: '))
        count+=1
    if count==2:
        number2=int(input('Enter second number: '))
        count+=1
    if count==3:
        number3=int(input('Enter third number: '))
        count+=1
    if count==4:
        number4=int(input('Enter fourth number: '))
        count+=1
    if count==5:
        number5=int(input('Enter fifth number: '))
        count+=1
    else:
        print('                            ')

答案 2 :(得分:0)

您可能会发现这个更短,对同类的未来项目更有用:

orderingList=['first','second','third','fourth','fifth']
numbers = []
for i in range(len(orderingList)):
    ordering = orderingList[i]
    number = int(input('Enter '+ordering+' number: '))
    numbers.append(number)
print(numbers)

答案 3 :(得分:0)

您应该在if语句中包含第一个数字。此外,count + = 1不需要重复这么多。如果你想这样做,这样就可以了:

count = 1

while count < 6:
   if count ==1:
       number1=int(input('Enter first number: '))
   if count==2:
     number2=int(input('Enter second number: '))
   elif count==3:
     number3=int(input('Enter third number: '))
   elif count==4:
        number4=int(input('Enter fourth number: '))
   elif count==5:
        number5=int(input('Enter fifth number: '))
   else:
        print('                            ')

   count += 1