derBeobachter

derBeobachter

Я красавец! Очень возможно, что бабушка моя согрешила с водолазом.
Пикабушник
Дата рождения: 09 сентября 1980
поставил 5504 плюса и 2486 минусов
отредактировал 1 пост
проголосовал за 1 редактирование
Награды:
5 лет на Пикабуболее 1000 подписчиков
90К рейтинг 1411 подписчиков 19 подписок 91 пост 20 в горячем

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

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



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


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



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


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...



Здоров.

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


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

Ну а теперь копнем дальше. Возьмем, к примеру, утверждение, что хорошая погода, и скажем,

что это истина, мало того- мы еще скажем, что буква А значит "хорошая погда", и она истинна.

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

А теперь мы все это попробуем объединить в одну строчку. Может ли быть погода одновременно хорошей и плохой? Может ли одновременно результат истины и лжи быть истиной? Для ответа на эти и другие вопросы  существуют законы товарища Буля.


А теперь попробуем сказать в формате булевой алгебры

"хорошая погода" и " плохая погода"

вместо буквы и у нас есть знак ∧ (иногда * или точка)

и выглядит это так  A ∧B . А теперь смотрим на так званную таблицу истинности ниже.

Она говорит "если погода хорошая и погода хорошая, то погода хорошая"

Если погода хорошая и погода плохая то погода плохая

если погода плохая и погода хорошая то погода плохая

если погода плохая и погода плохая то погода плохая.


Или же если утверждение истина и другое истина то все утверждение истинно и тд

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

все тоже самое, но меняем и на или , который обозначается либо плюсом, либо таким

знаком ∨


если а истинно или В истинно то утверждение истинно

и тд

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

А еще есть такая штука как отрицание. Делает из истины ложь или из ложи истину. Изображается палкой, например так _ или так - или полоска над буквой или выражением

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

Вот так это работает.

Но и это еще не все. Товарищ Буль развил все это до целых законов, которые вы будете использовать в программировании. Их гораздо больше, но начнем с этих

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

Питон перенял это дело, а операторы использует следующие

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

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

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

Дальше можете сами экспериментировать .

А я это здесь оставлю для примера

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

Ну это все присказка, а сказка впереди.

Теперь мы будем  учиться сравнивать. Сравнивать все что угодно. Да, даже это, хотя у пикабушников оно всегда 49,5.


Давайте подумаем что есть сравнение двух чисел. Это есть не это, а два числа, между которыми есть знак больше\меньше\ .


В питоне есть такая крутая возможность, как сравнивание двух обьектов разных типов. В данном случае идет речь о числовых обьектах. К Примеру можно сравнять инт и флоат.


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


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

Программирование Python по моим конспектам Лекция 9 Питон, Программирование, Языки программирования, Длиннопост
Программирование Python по моим конспектам Лекция 9 Питон, Программирование, Языки программирования, Длиннопост
ну и операторы тождественности, куда же без них
Программирование Python по моим конспектам Лекция 9 Питон, Программирование, Языки программирования, Длиннопост

Ну а теперь потренируемся на кошках.

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

Вот вам последний пример A имеет индекс 65, а маленькая буква а имеет индекс 97, значит она больше чем большая А

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

Ну а теперь поговорим о операторе is. Все мы помним такую чудную вещь как id обьектов, и все мы знаем в каких случаях у нескольких объектов одинаковый айди. С помощью оператора is мы можем определить указывают ли имена нескольких переменных на один айди.

Не путайте никогда этот оператор с оператором тождественности ==. Иначе..как всегда..айпи..звонок в дверь..больница с переломами.

Оператор is not делает противоположное.

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

А сейчас смотрим на очередной финт ушами.

Все мы помним, что

у двух одинаковых объектов - одинаковые ид. А вот смотрите сюды и удивляйтесь.

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

Когда мы создаем списки, у них уже разные ид, даже если у них одинаковое содержимое.


Принадлежность к множеству

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

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

Программирование Python по моим конспектам Лекция 8.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...



Здарова товарищи кусанты! Сегодня для вас наступили хреновые времена, когда руководство партии выделило для вас задания по целой, мать ее за ногу, лекции.

Однако, родина не пустит вас в бой, не снабдив предварительно пиздюлинами ценными советами.

Поэтому после короткой переклички. Все принимают упор лежа и слушают ушами.

Начнем мы с трансформации типов. Значит так. Вы мне это не это и глазами пустыми не смотрите вдаль, а смотрите ниже.

Программирование Python по моим конспектам Лекция 8.9.1 Питон, Языки программирования, Лекция, Длиннопост
А теперь быстро отвечаем на вопрос. Каков будет результат действия программы если х=1

а y=2. Кто не ответил- идет в наряд на картошку. Кто ответил неверно- идет в наряд на парашу.

Хм..выходит все идут в наряд на парашу!! А чего? А того что вот

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

Непоняяятка вышла..ага..А все потому что питонище нам показало не сумму чисел, а результат процесса конкантенации.

Функция input(), ребятки, выводит строку, а не int. Вот где собачка порылась.

Так вот, курсанты. Для того чтобы солдату добиться суммы двух чисел, необходимо их превратить из строки в цело(или не цело)численный тип. Как это делается? Очень просто. Смотрим глазами ниже.

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

все решает функция int(), которая превращает в данном случае string в int. Можно еще вот так -

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

Самое главное, что вы должны понять, перед отправкой на фронт говнокодеров, это то, что когда вы трансформируете тип вы нихрена не трансформируете обьект!!! В этот момент создается новый обьект!!


Это еще не все.

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

Ну вот и дождались. Задания.


Задание 1

какие результаты мы получим, при исполнении данных выражений. Какие Выражения неверны?

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

Задание 2


Книжный номер ISBN состоит из 10 цифр.

a1a2a3a4a5a6a7a8a9a10

Последняя цифра а10 - это проверяющая цифра. Она высчитывается вот как

сначала идет сумма, по формуле ниже

p=1*а1+2*а2+3*а3+4*а4+5*а5+6*а6+7*а7+8*а8+9*а9

Проверочная цифра а10 это остаток целочисленного деления  p на 11.


Пример ISBN 3826604237 Проверочная цифра 7

Подсчет. 1*3+2*8+3*2+4*6+5*6+6*0+7*4+8*2+9*3=150

150 деленное на 7  остаток 7


Задание- нипишите программу, которая из ISBN высчитывает проверочную цифру. Вводится девятизначное целое число. Выводится проверочная цифра.


Задание 3

Напишете Программу которая считывает название песни, затем выводит это в формате чарта


Пример


Введите название песен


Название: Ohne dich

Название: Выпьем за любовь

Название: Нас не догонят


А вот и три первые песни чарта


Место 1: Ohne dich


Место 2: Выпьем за любовь


Место 3: Нас не догонят


=================

используйте для песен списки. Исходите из пустого списка [], который постоянно расширяется


Задание 4


Разработайте программу- телефонный справочник

Пример


Введите Имя и номер телефона

Имя Иван

Номер телефона 2255


Имя Петро

Номер телефона 000



Список телефонов

Иван 2255

Петро 000


Используйте Список из кортежей. Исходите из пустого списка [], который постоянно расширяется



Ну...удачи!!

Показать полностью 7

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

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


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



Ну, что, товарищи..Жизнь бежит, жизнь меняется, а мы все гоняем питона.


Короче, други. Вечер в хату. Начнем с нового для нас зверька.

Множества

Что есть множества? И где мы видим их в реальной жизни. Короче, представляем себе посиделки с чифиром ваших корешей. Перефразируем. Группа людей или множество людей.Все члены группы уникальны. Один человек не может быть дважды вашим корешом. В этом и есть фишка множеств. В множествах каждый обьект индивидуален и никогда не повторяется. Далее. У множеств нет индексов. Ну мы же не можем сказать "друг номер 4" или "друг номер 6"..хотя..с последним я бы поспорил..есть шестерки..мда.

Короче, братишки, все просто. Вы главное не мандражируйте.

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

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

Питон предлагает нам для предоставления множеств два типа данных set и frozenset. Разница в том, что последние неизменяемы. Они, ясно из имени, заморожены.

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

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

Как и в теории множеств (Надеюсь, вы ее в школе проходили. Ибо я хз. Я военный лицей оканчивал и спал на математике после нарядов) здесь можно реализовать одинаковые операции с множествами, как и в математике.

Срез множества (нахождение общих членов двух множеств) оператором &

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

Объединение множеств. Говорит само за себя. Оператор тут | и он берет уникальные элименты обоих множеств, не дублируя одинаковые

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

Разница множеств. Результат- не Общие члены множества. Оператор -

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

С множествами усьо.


Словари.

Очень хороший тип данных, друзья.

Все мы знаем как работает словарь. Ты ему слово-он тебе перевод. По этому принципу работают и словари в питоне. Словарь состоит из пары. Ключ:значение, которые отделяются двоеточием. Доступ к элиментам осуществятся по ключу. Дабы не болтать много.

Вот вам англо русский минисловарь

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

К словарям мы еще вернемся. А пока, я заебался вам писать. И вообще, завтра уже будут задания. Хватит мне мучатся. Теперь и вы помучаетесь. Всем всего!

Показать полностью 5

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

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



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



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

Клонирование элементов последовательности в n раз осуществляется оператором *

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

Ничего сложного.

А теперь то, что нам будет нужным довольно скоро.

Определение длины последовательности. Длиной последовательности мы называем количество элементов последовательности. Такие вот дела, ребятки. Магия происходит с помощью функции len()

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

А сейчас вернемся к теме, которую, я вскользь цеплял уже.

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

Кортежи и строки- их яркие представители. Эксперименты по добавлению элиментов в оные я уже проводил и картинки показывал.

Списки же- изменяемые. Аналогично- фотосессия уже была на прошлой лекции.

А теперь вопрос. Нахрена я повторяюсь тогда?

А вот чего- неизменяемые объекты (типа кортежей или строк) имеют еще одно интересное свойство.

Не бывает двух одинаковых неизменяемых объектов с разным id


Для тех кто не вкурил- если два неизменяемых объекта одинаковы- у них одинаковый id (они идентичны)

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

Другими словами, два разных имени указывают на один обьект.

А теперь эксперимент с изменяемым типом данных

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

Вот такой визуальный вывод я еще изобразил.

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

Простите за краткость. На этом я все.

Показать полностью 5

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

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



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



Сегодня, дорогие 500 подписчиков, и только 2 из них, которые это прочитают, мы поговорим о таких зверях как списки. Ну все мы знаем что такое список- это то с чем мама в магазин посылают.  Ну списки в жизни разные бывают. Список бывших, или список проебаных вещей. И тд.

В питоне тоже списки есть. Списки объектов. Объекты эти, как правило, имеют один тип. А основной "фишкой" списков есть то, что они постоянно изменяются. Возьмем, к примеру, список сотрудников фирмы. Один накосячил- уволен, другая залетела- в декрет и тд Ну и меняется список туда-сюда. Ну что еще..вот еще пример. Хит-парад попсовый. Поют шлюшки всякие и педики стриженные..кто то лучше- кто то хуже. Нимфетки смссками лайкают. Ну и меняется хитпарад песенок. Туда-сюда поднимаются или опускаются песенки. Ну короче, вы поняли.

Так. Хорош ртом говорить. Переходим к информатике. В питоне, товарищи, списком, как и говорилось, называют последовательность литералов, отдленых друг от друга запятой, и выделенных квадратными скобками. Ну вот пример. Думаю, учитывая две предыдущие лекции, вопросов не возникнет

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

Как и в Кортежах, мы можем делать двумерные или трехмерные (и тд) списки. То есть содержать и другие списки.

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

Основная разница между кортежами и списками- последние можно изменять. Например с помощью функции append() мы добавляем элемент в список.

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

С кортежами такое не прокатит. Они неизменяемый. Так что даже не пытайтесь. Я пробовал.

Ладно, блеать, если не верите-

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

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


последовательности одинаковых типов можно объединять. Это называется

конкатенация. А оператором оной есть +

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

Последовательности разных типов конкатенации не подлежат.

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

Показать полностью 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 Питон, Программирование, Языки программирования, Длиннопост

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


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

Показать полностью 6

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

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

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



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

Сегодня в нашей студии новый гость, которого зовут последовательность. Если вы знакомы с другими языками программирования, то последовательности чем то похожи на массивы. Однако..начну с нуля

Представим себе коммуналку. А теперь давайте заморочимся, поймем, что это коммунальная квартира- это последовательность комнат (допустим их 4), причем каждая комната пронумерована. Ну ессно там даже сортир есть, и по традиции у него номер - 00, и там сейчас срет дядя Паша. Ну и давайте изобразим нашу коммуналку в таком виде

комната 00- васерклозет

комната 01- там кроме кота нет никого

комната 02- комната пуста

комната 03- развлекаются дядя Вася и жена дяди Паши, пока последний...ну вы понЕли

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

А теперь вспоминаем из нашего первого урока. Что такое все эти дяди и кошечки для нас. Для нас они объекты. Так вот. Последовательность собирает  объекты (даже разного типа) в определенный порядок. Элименты последовательности начинаются с 0. Номер этой последовательности мы договоримся называть индексами. И будут они у нас отображаться без ведущего нуля как на картинке, а просто 0,1,2,n...n+1. C помощью индексов мы можем  получить доступ к элементу последовательности.

Допустим наша последовательность будет носить гордое имя Kommun, тогда будет она выглядеть вот так Kommun[i], где i это имя i-элимента.

Таким образом наш дядя Паша будет элементном Kommun[0], а его пустая комната Kommun[2] и тд.

Мы можем получать доступ к последнему элименту вот так Kommun[-1], к предпоследнему Kommun[-2] и ид.

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


Начнем со строк. Строками (string) в народе называют последовательность символов. Вот такие есть примеры литералов стринг

"hello" или "12565"

Важно знать, что строки являются неизменяемым типом. Это значит, что в обьект стринг мы не можем втулить символ, удалить сивол или заменить символ.

Короткие строки.

Короткие строки у нас декларируются помощью одинарных кавычек ' или двойных кавычек " и должны находиться в одной логической строке. Короче войну и мир вы в одну короткую строку не втулите, если только она не будет без переносов. Короткая строка вмещает любое количество символов ASCII (кто не знает что это- гуглим). За исключением бекслеша \ .

Позже поймете почему так.

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

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

Длинные строки


выделяются либо тремя одинарными либо тремя двойными скобками и могут не быть в одной строке"

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

мы можем самостоятельно руководить переносом строк с помощью последовательности символов \n

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

А теперь возвращаемся к нашей бекслеш и смотрим на экран

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

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

А ведь это же последовательность символов!

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

На этом я на сегодня все. Всем не хворать.

Показать полностью 8

Корпус для ПК в стиле Z3

Ахой други - товарищи. Решил сегодня поделиться своей поделкой, на которую сподвиг меня вот этот пост.

http://pikabu.ru/story/korpus_dlya_kompyutera_v_stile_staroy...

Мне почему-то показалось, что силенок хватит на подобное, однако очень быстро я понял, что подобную штуку сотворить, это вам не пуд сахару. Однако, я решил идти к цели мелкими шажками, и закупил для начала, необходимые детали. К сожалению, в связя со скоропостижной кончиной карты памяти, на которой были фотки процесса изготовления, у меня осталось лишь пару фоток, причем не самых лучших, однако, и тому рад.

В процессе раздумий, было  решено использовать в основе поделки оргстекло. А Сама идея выглядела в моем представлении так.

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост

Аппарат должен отображать основные показатели системы, и управляться с помощью двоинчного кода, как и его прародитель Z3. Таким образом была придумала 5-битовая панель. Иными словами, в зависимости от порядка вкл-выкл тумблеров, ПК знает, какую информацию ему отображать. По умолчанию должны быть отображены в верхнем индикаторе- загрузка ЦП, в нижнем левом- заполненность жесткого диска, в правом- загрузка ОП.

Ну как бЭ ТЗ себе Выставил и приступил к работе.


У меня была сумашедшея идея, запускать ПК с помощью ключа (ну да..я художник- я так вижу).

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост

Вырезаю из оргстекла заготовку. К сожалению, не сохранились фотки самого процесса работы, кроме той, что ниже- справа видны внутренности индикаторной панели.

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост

Сама панель управляется Ардуиной, А ардуина простеньким питон скриптом, который собирает основную инфу о системе.

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост

На выходе имею такое чудо, которое сейчас находится в режиме подсушки от клея, поэтому еще топорщится местами, но это дело поправимое.

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост

Ну и в процессе работы выглядит вот так

Корпус для ПК в стиле Z3 Компьютер, Моддинг, Программирование, Длиннопост
Показать полностью 6
Отличная работа, все прочитано!