Инкапсуляция
Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным). Инкапсуляция делает некоторые из компонент доступными только внутри класса.
Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.
Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.
#теория
Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным). Инкапсуляция делает некоторые из компонент доступными только внутри класса.
Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.
Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.
#теория
👍1
Наследование
Наследование подразумевает то, что дочерний класс содержит все атрибуты родительского класса, при этом некоторые из них могут быть переопределены или добавлены в дочернем. Например, мы можем создать свой класс, похожий на словарь.
#теория
Наследование подразумевает то, что дочерний класс содержит все атрибуты родительского класса, при этом некоторые из них могут быть переопределены или добавлены в дочернем. Например, мы можем создать свой класс, похожий на словарь.
#теория
Полиморфизм
Полиморфизм - разное поведение одного и того же метода в разных классах. Например, мы можем сложить два числа, и можем сложить две строки. При этом получим разный результат, так как числа и строки являются разными классами.
#теория
Полиморфизм - разное поведение одного и того же метода в разных классах. Например, мы можем сложить два числа, и можем сложить две строки. При этом получим разный результат, так как числа и строки являются разными классами.
#теория
👍2
Списки
Списки в Python - упорядоченные изменяемые коллекции объектов произвольных типов (почти как массив, но типы могут отличаться).
Чтобы использовать списки, их нужно создать.
Создать список можно несколькими способами:
- обработать любой итерируемый объект (например, строку) встроенной функцией
- с помощью генераторов
Генератор списков - способ построить новый список, применяя выражение к каждому элементу последовательности. Генераторы списков очень похожи на цикл
#теория
Списки в Python - упорядоченные изменяемые коллекции объектов произвольных типов (почти как массив, но типы могут отличаться).
Чтобы использовать списки, их нужно создать.
Создать список можно несколькими способами:
- обработать любой итерируемый объект (например, строку) встроенной функцией
list
- при помощи литерала- с помощью генераторов
Генератор списков - способ построить новый список, применяя выражение к каждому элементу последовательности. Генераторы списков очень похожи на цикл
for
.#теория
Функции и методы списков
Создать создали, теперь нужно со списком что-то делать. Для списков доступны основные встроенные функции, а также методы списков.
Нужно отметить, что методы списков, в отличие от строковых методов, изменяют сам список, а потому результат выполнения не нужно записывать в эту переменную.
#теория
Создать создали, теперь нужно со списком что-то делать. Для списков доступны основные встроенные функции, а также методы списков.
Нужно отметить, что методы списков, в отличие от строковых методов, изменяют сам список, а потому результат выполнения не нужно записывать в эту переменную.
#теория
Взятие элемента по индексу
Как и во многих других языках, нумерация элементов начинается с нуля. При попытке доступа к несуществующему индексу возникает исключение IndexError.
В данном примере переменная
В Python также поддерживаются отрицательные индексы, при этом нумерация идёт с конца.
#теория
Как и во многих других языках, нумерация элементов начинается с нуля. При попытке доступа к несуществующему индексу возникает исключение IndexError.
В данном примере переменная
a
являлась списком, однако взять элемент по индексу можно и у других типов: строк, кортежей.В Python также поддерживаются отрицательные индексы, при этом нумерация идёт с конца.
#теория
👍1
Срезы
В Python, кроме индексов, существуют ещё и срезы.
item[START:STOP:STEP] - берёт срез от номера
#теория
В Python, кроме индексов, существуют ещё и срезы.
item[START:STOP:STEP] - берёт срез от номера
START
, до STOP
(не включая его), с шагом STEP
. По умолчанию START = 0
, STOP = длине объекта
, STEP = 1
. Соответственно, какие-нибудь (а возможно, и все) параметры могут быть опущены.#теория
🔥1
Срезы: добавление и удаление элементов
Также с помощью срезов можно не только извлекать элементы, но и добавлять и удалять элементы (разумеется, только для изменяемых последовательностей).
#теория
Также с помощью срезов можно не только извлекать элементы, но и добавлять и удалять элементы (разумеется, только для изменяемых последовательностей).
#теория
Операции с кортежами
Все операции над списками, не изменяющие список (сложение, умножение на число, методы index() и count() и некоторые другие операции). Можно также по-разному менять элементы местами и так далее.
Например, гордость программистов на python - поменять местами значения двух переменных (см. картинку выше).
#теория
Все операции над списками, не изменяющие список (сложение, умножение на число, методы index() и count() и некоторые другие операции). Можно также по-разному менять элементы местами и так далее.
Например, гордость программистов на python - поменять местами значения двух переменных (см. картинку выше).
#теория
👍1
Словари (dict)
Словари в Python - неупорядоченные коллекции произвольных объектов с доступом по ключу. Их иногда ещё называют ассоциативными массивами или хеш-таблицами.
Чтобы работать со словарём, его нужно создать.
На картинке пример создания с помощью литерала.
#теория
Словари в Python - неупорядоченные коллекции произвольных объектов с доступом по ключу. Их иногда ещё называют ассоциативными массивами или хеш-таблицами.
Чтобы работать со словарём, его нужно создать.
На картинке пример создания с помощью литерала.
#теория
Методы словарей
classmethod
#теория
dict.clear()
- очищает словарь.dict.copy()
- возвращает копию словаря.classmethod
dict.fromkeys(seq[, value])
- создает словарь с ключами из seq и значением value.dict.get(key[, default])
- возвращает значение ключа, но если его нет, не бросает исключение, а возвращает default.dict.items()
- возвращает пары (ключ, значение).dict.keys()
- возвращает ключи в словаре.dict.pop(key[, default])
- удаляет ключ и возвращает значение. Если ключа нет, возвращает default.dict.popitem()
- удаляет и возвращает пару (ключ, значение). Если словарь пуст, бросает исключение KeyError. Помните, что словари неупорядочены.dict.setdefault(key[, default])
- возвращает значение ключа, но если его нет, не бросает исключение, а создает ключ со значением default (по умолчанию None).dict.update([other])
- обновляет словарь, добавляя пары (ключ, значение) из other. Существующие ключи перезаписываются. Возвращает None.dict.values()
- возвращает значения в словаре.#теория
👍7
Множества
Множество в python - "контейнер", содержащий не повторяющиеся элементы в случайном порядке.
#теория
Множество в python - "контейнер", содержащий не повторяющиеся элементы в случайном порядке.
#теория
👍4
Методы множеств
С множествами можно выполнять множество операций: находить объединение, пересечение...
#теория
С множествами можно выполнять множество операций: находить объединение, пересечение...
len(s)
- число элементов в множестве (размер множества).x in s
- принадлежит ли x множеству s.set.isdisjoint(other)
- истина, если set и other не имеют общих элементов.set == other
- все элементы set принадлежат other, все элементы other принадлежат set.set.issubset(other)
или set <= other
- все элементы set принадлежат other.set.issuperset(other)
или set >= other
- аналогично.set.union(other, ...)
или set | other | ...
- объединение нескольких множеств.set.intersection(other, ...)
или set & other & ...
- пересечение.set.difference(other, ...)
или set - other - ...
- множество из всех элементов set, не принадлежащие ни одному из other.set.symmetric_difference(other); set ^ other
- множество из элементов, встречающихся в одном множестве, но не встречающиеся в обоих.set.copy()
- копия множества.#теория
🔥3👍2
Трехместное выражение if/else
Обычная условная конструкция в примере довольно короткая, но, тем не менее, занимает целых 4 строки. Специально для таких случаев и было придумано трехместное выражение
В данной инструкции интерпретатор выполнит выражение
#теория
Обычная условная конструкция в примере довольно короткая, но, тем не менее, занимает целых 4 строки. Специально для таких случаев и было придумано трехместное выражение
if/else
.В данной инструкции интерпретатор выполнит выражение
Y
, если X
истинно, в противном случае выполнится выражение Z
.#теория
👍5🔥1🤯1
Они смеялись, когда я подписался на эти каналы, но когда я начал читать эти посты…
IT questions - тут ты точно подготовишься к собеседованию: логические и практические задачи, подборки вопросов с собеседований
Learn English, code better — качаешь технический английский - поднимаешь себе ЗП! Без больших усилий, уделяя 5 минут в день!
FullStack Libs - будь открыт к новым технологиям: библиотеки, фреймворки, плагины и другие полезные ресурсы для Frontend и Backend
Python TAT - освой самый популярный язык программирования без воды, по примерам самых распространенных задач!
Читай и развивайся, пока компилируется проект!
IT questions - тут ты точно подготовишься к собеседованию: логические и практические задачи, подборки вопросов с собеседований
Learn English, code better — качаешь технический английский - поднимаешь себе ЗП! Без больших усилий, уделяя 5 минут в день!
FullStack Libs - будь открыт к новым технологиям: библиотеки, фреймворки, плагины и другие полезные ресурсы для Frontend и Backend
Python TAT - освой самый популярный язык программирования без воды, по примерам самых распространенных задач!
Читай и развивайся, пока компилируется проект!
👍1
Чем полезен Python и как его выучить?
Любой может выучить Python с нуля. Необходимые знания вы получите на курсе «Профессия Python-разработчик» в Skillbox! Переходите по ссылке: https://clc.to/MaBaFQ
Мы поможем развить актуальные навыки и стать сильным специалистом.
В результате вы научитесь:
✅ создавать программы: от консольных скриптов чат-ботов
✅ оптимизировать старые приложения и дорабатывать неудачный код
✅ использовать средства разработки, как Git и PyCharm
📌Открываем бесплатный доступ к первым 3 модулям. Вы учитесь совершенно бесплатно и решаете, стоит ли продолжать.
Узнать подробнее о курсе и получить скидку 60% в честь Нового года можно здесь: https://clc.to/MaBaFQ Оставьте заявку на курс сейчас и получите 6 месяцев бесплатного обучения и год английского в подарок!
Любой может выучить Python с нуля. Необходимые знания вы получите на курсе «Профессия Python-разработчик» в Skillbox! Переходите по ссылке: https://clc.to/MaBaFQ
Мы поможем развить актуальные навыки и стать сильным специалистом.
В результате вы научитесь:
✅ создавать программы: от консольных скриптов чат-ботов
✅ оптимизировать старые приложения и дорабатывать неудачный код
✅ использовать средства разработки, как Git и PyCharm
📌Открываем бесплатный доступ к первым 3 модулям. Вы учитесь совершенно бесплатно и решаете, стоит ли продолжать.
Узнать подробнее о курсе и получить скидку 60% в честь Нового года можно здесь: https://clc.to/MaBaFQ Оставьте заявку на курс сейчас и получите 6 месяцев бесплатного обучения и год английского в подарок!
👍8❤1