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

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

Ахой, товарищи, немного я пропал. Но теперь вот я решил вернуться в семью ради 300 подписчиков. Сегодня, как обещал, мы поговорим о довольно большой теме.

Типы данных. Обычно с нее начинают, ну а мы вот только дошли до нее.

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

Кто забыл- читаем первые посты.

Итак, если мы заговорим ртом о таких литералах как 1123 и 'холоуворд', то мы начнем подозревать, что в первом случае идет речь о типе данных int, а во втором string или str.

Тип обьекта очень , так как он определяет определенные алгоритмы своей обработки интерпретатором. Вот пример

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

В первом случае произошло обычное сложение двух целых чисел. Во втором обьеденение двух строк. С этим мы еще не сталкивались, так что берем на прицел такую возможность. С помощью оператора "+" можно объединить две строки, и это будет называться чудным словом Конкатенация.

Так к чему же я это все тут рассказываю. Смотрим глазами ниже на эксперимент.

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

Матюкается красным цветом наш интерпретатор. А все потому, что оператор + зависит от типа данных. Ну а теперь попытаемся понять чего так происходит. Чтобы понять ошибки интерпретатора нужно думать как интерпретатор. Короче говоря считывает интерпритатор нашу еденичку и думает- ну по любому следующей должно быть либо целое число, либо число с запятой. И тут он получает нежданчик в виде строки, интерпретатор возмущается. Программист обижается.

Надеюсь, теперь стало понятно почему важно не путать типы данных.

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

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

Наша задача- всех изучить. Начнем с моего любимого типа. Bool. Назван сей зверь в честь товарища Джорджа Буля, одного из создателей математической логики.

Я попытаюсь зайти издалека. Представим себе какое либо утверждение.

Земля круглая- это факт, и это правда.

А если мы скажем, что земля плоская- ну это ложь, однозначно.

А как бы нам все это дело изобразить так

earth_is_round=1

earth_is_not_round=0

Таким образом, мы заменили значение правда на 1, а ложь на 0.

А теперь нам и этого мало, нам хочется двигаться дальше и мы вместо 1 используем литерал True, а вместо 0 литерал False

earth_is_round=True

earth_is_not_round=False


Таким образом мы понимаем что bool переменные могут быть только в двух значениях "правда" или "ложь". Третьего не дано.

Именно в таком типе данных нам даст ответ интерпретатор, если мы введем неоспоримые факты

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

Если очень приспичит, мы можем забыть о литералах False и True, так как глубоко в душе интерпретатор воспринимает их как 1 и 0.

Мы даже арифметические операции производить можем.

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

Тип None.

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

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

мы не можем производить арифметические операции с этим типом. Ибо как можно что то делать с  тем, чего нет?

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

Однако, пару вещей мы можем сделать с этим типом

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

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

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

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

Лучше сразу писать по pep8, чем потом переучиваться

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

8ой урок, в Пайтоне динамическая типизация - нормально 8)

Хотя, каждому свое развлечение.

Давайте сразу к PyQt5, а то так и не нарыл себе халявных книг.

1
Автор поста оценил этот комментарий
Восемь уроков, а ты все людей типам учишь?)
раскрыть ветку
Автор поста оценил этот комментарий

Здоров! Спасибо за урок :) У меня такой вопрос: В булевом типе - нужно указывать только true и false, или 0 и 1 тоже прокатит?

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

Пост то норм, только вот зачем? Хауди Хо на ютубе давно уже всех затмил.

раскрыть ветку