Продолжение статьи Стоит обратить внимание, что в случае, когда вы используете оператор if несколько раз на одном уровне вложенности инструкций, то они работают независимо друг от друга и не образуют одну общую инструкцию: Результат выполнения такого кода будет следующим: Оператор if всегда задает начало новой инструкции. В примере выше переменная var попадает на проверку в несколько инструкций, сперва мы получаем результат True в выражении var == 10, после чего выводится первое сообщение. Далее var опять проверяется следующей инструкцией, получается результат False и программа выводит второе сообщение, после оператора else. Давайте для наглядности построим блок-схему данной программы: В данном случае будет корректно заменить второй if на elif, тогда мы получим единую инструкцию, которая выведет только одно верное сообщение: И блок-схема данной программы будет выглядеть следующим образом: Конструкции if-elif-else можно использовать на разных уровнях вложенности для более сложных прогр