return True stop the loop in Python?

前端 未结 3 409
我在风中等你
我在风中等你 2021-01-28 03:10

I am still a beginner but does not know why the \"return True\" in a \"for loop\" stop the loop after the first pass. If I use something else than \"return\", everything is fine

3条回答
  •  伪装坚强ぢ
    2021-01-28 04:15

    If you want to return True, but still keep looping, you may need a pattern like this. I'm calling the variable retval but you can call it anything that makes sense

    def roc_valid(self,cote_x,cote_y):
        from graph_chess import board
        p = board()
        side=(side_x,side_y)
        retval = False
    
        if side == (0,0):
            for (x,y) in (0,1),(0,2),(0,3):
                print(King.ok_to_move(self,x,y))
                if p.getPiece(x,y)=="" and king.ok_to_move(self,x,y):
                    retval = True
    
        return retval
    

提交回复
热议问题