Программирование Python по моим конспектам Лекция 9.1

Пост можно топить, минусить и всячески убивать, ибо в горячем он нахер не нужен, а вот подписчикам пригодится.


Для тех кто не в теме, тут я перевожу свои лекции по питону с языка немецкого на язык человеческий, поэтому- если что- я не виноват. Эти лекции созданы не для того, чтобы сделать из человека говнокодера, а для того, чтобы помочь в сложных темах, которые некому объяснить, а книга по программированию не может с этим помочь. Если вы никогда не были в такой ситуации- значит вы вундеркинд и я хочу от вас детей.



Исправления и замечания приветствуются.


Список предыдущих лекций



http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...

http://pikabu.ru/story/programmirovanie_python_po_moim_konsp...



Здоров, потерялся я тут немного со своими лекциями, однако збс, что этого никто не заметил.

Сегодня поговорим о важнецкой теме. Вот такой важной, шо аж ваще. Без  нее дела не будет. Крест на пузе- дела не будет!!

Сегодня мы поговорим о операторах разветвления. Ага. Разветвление-это вам не математика- тут придется думать!

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

Значит так. Представляем теперь, что ваша тушка стоит напротив светофора. Если горит зеленый- идем, если красный- стоим и вертим башней, наслаждаясь природой.

Это самый яркий пример разветвления в нашей скучной, серой жизни. Ключевое слово тут-ЕСЛИ. Иными словами есть условие, и ЕСЛИ оно исполнено- наступает действие.

В питоне тоже есть свои ЕСЛИ, которые назвали в честь слова бусурманского if (если. пинд.яз)

Выглядит это так


if условие :

инструкция


Итак, первая строка- это условие, при исполнении которого наш интерпретатор переходит к второй строке. После первой строки стоит двоеточие - важно это не забыть!

А теперь самый важный  момент- все инструкции должны быть либо либо на одинаковое расстояние от левого края табулированы, либо просто отодвинуты пробелом. Только тогда они исполнятся. Но с этим мы еще не раз столкнемся так что научитесь на практике.

А вот вам пока мелкий примерчик. Программка принимает число, если число отрицательное- выводим его положительный эквивалент. Если положительное- не делаем ничего.

Программирование Python по моим конспектам Лекция 9.1 Питон, Программирование, Лекция, Длиннопост

Теперь разбор построчно. Первая строка- переменная x начинает указывать на значение равное введенному нами параметру в целочисленном формате.

вторая строка. проверяем соответствует ли наш х условию. Если значение в скобках истинно - интерпретатор заходит в раздел "инструкция" и исполняет его. Если нет он его перепрыгивает и сразу переходит к инструкции print.


Сумрачный гений не остановился на одном ифе и выдумал еще одну полезную штукенцию, которою зовут ЭЛСЭ. else (иначе. пинд.яз). В питоне выглядит так


if условие :

инструкция

else:

инструкция


Работает схема очень похоже на if, но с одним нюансом. Если условия исполнено- переходим к инструкции if. В противном случае переходим к инструкции else-

Создаем пример программы, которая продает билеты в кино. Для детей до 7 лет и пожилых людей (свыше 65 лет)- вход три рубля. Остальным - пять рублей.

Программирование Python по моим конспектам Лекция 9.1 Питон, Программирование, Лекция, Длиннопост

И последний зверь в нашем зоопарке зовется elif. Это как внебрачная дочь else и if.

Представляем себе такую ситуевину. Нам нужна программа, для автомата, который продает..сука что бы это придумать..эммм..

ээээээээммммммммм....во! автомат продает разноцветные жвачки, которые по разному стоят.

Говнокодим же ниже!

Программирование Python по моим конспектам Лекция 9.1 Питон, Программирование, Лекция, Длиннопост

выглядит как говно. Слишком много условий в условиях. Именно для таких случаев и изобрели elif.

Выглядет это дело так


if условие :

инструкция

elif:

инструкция

elif:

инструкция

elif:

инструкция


Пока все выглядит не очень понятно. Но когда я модифицирую программку выше, все станет понятней. Смотрим

Программирование Python по моим конспектам Лекция 9.1 Питон, Программирование, Лекция, Длиннопост

Как минимум выглядит не так страшно и более логично. Разбор построчно.

Бублэ принимает строку.  Это понятно.

Первый иф- проверка условия, если условие истинно- пишем цену в рубль. Конец программы. Если не истенно - идем к строке elif ИНАЧЕЕСЛИ. Если и это условие условие не выполнено- идем к следующему и так далее.

последний else- это так званная "защита от дурака". Ведь кто знает что введет пользователь. Да мы и сами знаем какое слово из трех букв  вы введете туда однажды. Для таких случаев и работает последняя строка.

На сегодня мои полномочия все. Монолог окончен

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

Содержание этого поста описывает то, что обычно находится на первых страницах любой книги по питону. Или вообще любой книги по любому языку программирования.
UPD:

должны быть либо либо на одинаковое расстояние от левого края табулированы, либо просто отодвинуты пробелом

Если бы большинство редакторов и сред разработки не меняли табы на пробелы, тебя бы следовало расстрелять.
А вообще - всё, что есть по оформлению кода, есть в PEP8. На что также указывается в любой книге по питону.

раскрыть ветку
1
Автор поста оценил этот комментарий

А что-нибудь посложнее есть? Просто тут явно самые основы, а на немецком наверняка какие-нибудь уж вкусняхи завалялись)

раскрыть ветку
Автор поста оценил этот комментарий

Здоров, дружище! Я тут беспокойный был, куда ты запропастился? Спасибо за лекцию :)

По сабжу: в питончике if не должно завершаться end?


это вам не математика- тут придется думать!

Чёт я орнул :D

раскрыть ветку
Автор поста оценил этот комментарий

Бред какой-то, это база любого языка. А где вкусняхи? Слышал в питоне есть какая-то супер крутая асинхронность.

Автор поста оценил этот комментарий
Давай циклы! Очень интересно, спасибо Вам!!!