Несколько операторов IF в цикле while с одинаковым уровнем отступов — это Pythonic?

#python-3.x

Вопрос:

Я хотел бы получить некоторые разъяснения относительно того, подходит ли этот код или он нуждается в реструктуризации. Я делаю мир Риборга: лабиринт

Мой код:

     def turn_right():
    turn_left()
    turn_left()
    turn_left()
    
def jump():
    turn_left()
    while wall_on_right():
        if not wall_in_front():
            move()
        if right_is_clear():
            turn_right()
        if wall_in_front():
                    turn_left()
        
            
while not at_goal():  
    if front_is_clear():
        move()
        if right_is_clear():
            turn_right()
            if right_is_clear() and front_is_clear():
                move()
    else:
        jump()
 

Код подходит для решения этой задачи, но я хочу уточнить ту часть, где я использовал несколько операторов IF с одинаковым уровнем отступов. Это работает да, но кажется не очень pythonic, должно ли это быть IF> ELIF> ELSE ? Это плохое кодирование? Я бы предпочел убедиться при изучении, что это наиболее эффективный и хорошо написанный способ.