2017-10-28 129 views
0

所以我试图制作一个选择动物,字母和数字的彩票程序,把它们放到一个数组中,并与另一个随机选择的部分相比较。while循环在完成后就结束了所有的操作

测试与我所说的动物圆。

我有无效项while循环,它不会继续前进,直到四只动物的一个被接受。但是,当它这样做,变无效去假和编码后它不会使用的。我昨晚做了这个问题,而当我终于放弃了,去睡觉了,我决定,我会写出来的flowgorithm(如果你还没有听说过它使一个流程图和你可以通过编程与它一步步)。

我做到了,它像预期的那样工作,我复制并粘贴它,而且我得到了和昨晚完全相同的问题。

这是代码。

#import library 

import random 

#get variables 

game = True 
invalid = True 
animalarray = [""] 

animalarray.append("tiger") 
animalarray.append("cow") 
animalarray.append("turtle") 
animalarray.append("bird") 
lotteryarray = [""] 

#game loop 

#animal round 

    print("Pick a animal: ") 
    print("tiger") 
    print("cow") 
    print("turtle") 
    print("bird") 
    print(" ") 
    lotteryarray[0] = input() 

#while loop for invalid entry 

    while invalid == True: 
     if lotteryarray[0] == "tiger" or lotteryarray[0] == "cow" or lotteryarray[0] == "turtle" or lotteryarray[0] == "bird": 
      invalid == False 
     else: 
      print("Invalid entry!") 
      lotteryarray[0] = input() 
    print(" ") 
    print("You chose " + lotteryarray[0]) 

game == False 

而且这是我在shell得到:

Pick a animal: 
tiger 
cow 
turtle 
bird 

tiger 

老虎还有就是我放,它并没有被打印。

这里是flowgorithm,就像我说的,在flowgorithm这个工程。

flowgorithm of lottery game

回答

1

我想通了。

我打印什么无效后,它是为了改变为假,并没有改变,我改变了两个等号,并且它的工作和改变了价值。