5

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

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


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


Сегодня, товарищи, мы продолжим наше общение о последовательностях, а именно поговорим о кортежах.

Не о этих

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

А о других. Вспоминаем наш пример с коммуналкой из предыдущей лекции. Много объектов. Обычно, все разных типов.

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

Имя и дата рождения какого либо тела

Описание положения объекта в трехмерном пространстве. ( через пару лекций доберемся до программы с точками в 3д пространстве)

Кортеж из шести элиментов (имя, фамилия, почтовый индекс, дом, улица, город)


Итак, кортеж состоит из чреды обьектов, формально, разных типов, которые разделены запятой. Они могут (но не обязательно) быть в круглых скобках.

Любуемся на этот зоопарк

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

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

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

Потом у нас вовсе идет пустой кортеж

А затем возвращаемся к нашему кортежу. Как я раньше и говорил- доступ мы осуществляем по индексу. Сначала я смотрю второй элемент кортежа (так как счисление у нас начинается с нуля). Далее смотрю третий элемент, который у нас есть вложенным котрежем.

Но как же получить доступ к элементам вложенного кортежа?

А вот ответ у нас на предпоследней строке. Сначала индекс самого  кортежа, к которому мы хотим доебаться обратиться (он у нас под индексом 2 так как)


индекс 0- pikabu

индекс 1- 4

индекс 2 - наша последовательность - hello, bye



, а затем вводим индекс необходимого его элимента. В нашем случае мы хотим первый элемент- поэтому индекс будет выглядеть [2][0]


А теперь минутка хардкора для новичков. Вот вам Кортеж, в котором есть две другие последовательности, причем во второй вложена еще одна, в которую вложена еще одна. Как у Кощея..яйцо в ларце, ларец в яйце..или как там. ВОт пример ниже. Наслаждаемся.

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

Еще одна полезная штукенция. Вместо декларирования элиментов кортежа..скажем так..вручную, можно использовать переменные. Вот так

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

Хороших выходных, товарищи.


пс. Задания будут через один урок. Я буду стараться ускориться с этими скучными темами, так как хочется уже приступить к интересным штукенциям)