2016-04-03 82 views
0

我有这样的代码:为什么我不能在if语句中打破?

turn2l = [] 
turn1l = [] 
for i in range(5): 

turn1 = raw_input("Enter co-ordinates player 1: ") 
turn1l.append(turn1) 
turn2 = raw_input("Enter co-ordinates player 2: ") 
turn2l.append(turn2) 

############# WINNER CHECKER ############# 

def winnerchecker(turn1l,turn2l): 
    try: 
     if "1,1" in turn1l and "1,2" in turn1l and "1,3" in turn1l: 
      print xplayer, 
      print "YOU HAVE WON! GG TO PLAYER 2 ;)" 
      break 
     elif "1,1" in turn1l and "2,1" in turn1l and "3,1" in turn1l: 
      print xplayer, 
      print "YOU HAVE WON! GG TO PLAYER 2 ;)" 
      break 
     elif turn1l == "2,1" and turn1l == "2,2" and turn1l == "2,3": 
      print xplayer, 
      print "YOU HAVE WON! GG TO PLAYER 2 ;)" 
      break 
    except: 
     pass 
return; 

winnerchcecker(turn1l,turn2l) 

程序上的功能break语句会失败,但我需要有断裂存在,因为这个功能会在我的计划以结束该程序可以使用两次。我怎样才能解决这个问题?

回答

1

您试图在forwhile循环之外使用break。由于您正在使用if/elif语句,因此在每次运行代码期间,只能执行其中一个语句。一旦条件之一评估为真,其余条件将被跳过。因此,您应该能够删除break命令,而不会影响代码的工作方式。

相关问题