Найти тему
programmer's notes (python and more)

Программирование на Python. Дополнение к уроку 7 (вложенные циклы)

Оглавление

Доброго времени суток, читатели, зрители моего канала programmer's notes.

Данные заметки это приложение к уроку 7.

Условные конструкции в одной строке

Действительная запись типа

a = значение1 if условие else значение2

может быть очень удобна. Тем более, что вместо скажем значение2 можно опять же использовать такой оператор. Как, например,Ю здесь

Переменная m, конечно здесь не обязательна. Можно просто

print(a if a > b and a > c else b if b > a and b > c else c)

Чтобы запись была более понятной лучше использовать скобки

m = a if a > b and a > c else (b if b > a and b > c else c)

Проще будет анализировать. Как я отмечал в видеоуроке, программирование это такой баланс между разными параметрами: производительность, объем памяти и читаемость. Поэтому желая оптимизировать код всегда помним о том, что его придется читать. И даже вам может понадобиться время, чтобы разобраться в вами же написанном коде.

Ну, а в конце изюминка. Попробуйте разобраться.

Вложенные циклы

Конечно, вложенные циклы это дело практики. Программирование это дело практическое. Но есть один важный вопрос. Выход из внутреннего цикла. Если несколько циклов вложены друг в друга, и выход из внутреннего цикла предполагает выход из нескольких следующих внешних циклов, то эта некоторая проблема. В таких языках как Си или Паскаль обычно используют оператор goto. Т.е. переход на указанную метку. Но в Python операторов перехода нет. Поэтому придется использовать break и некоторую переменную, которая определяет из какого количества вложенных циклов нужно выйти.

Ну и, наконец, мое обещание. Задача о елочке, которую я решал на видеоуроке с вложенным циклом, теперь с одним циклом. Напоминаю, что print(i, end=' ') означает, что после вывода числа выводится пробел, но не выводится код перевода строки.

Всего наилучшего. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.

Программирование на высокоуровневом языке это как строительство дома из готовых блоков, программирование на ассемблере - это строительство дома из кирпича
Программирование на высокоуровневом языке это как строительство дома из готовых блоков, программирование на ассемблере - это строительство дома из кирпича

#программирование #программисты #языки программирования #python