🐍 Укус питона 🐍
2.59K subscribers
983 photos
21 videos
284 links
🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки.

👽 Админ - @it_dashka
🔊 Купить рекламу: https://telega.in/c/byteofpython

👉 Чат: @abyteofpython
👉 Поделиться с друзьями: @byteofpython
Download Telegram
🔹 set() — создание множества в Python

set() создаёт коллекцию уникальных элементов. Повторяющиеся значения автоматически удаляются.

➡️ Пример:

numbers = [1, 2, 2, 3, 3, 3]
unique = set(numbers)
print(unique)

{1, 2, 3}


Множества полезны для удаления дубликатов, математических операций (пересечение, объединение) и быстрых проверок принадлежности.
🔹 dict.get() — безопасное получение значения по ключу

Метод get() возвращает значение из словаря по ключу. Если ключа нет — возвращает None или значение по умолчанию.

➡️ Пример:


user = {"name": "Анна", "age": 28}

print(user.get("name")) # Анна
print(user.get("email")) # None
print(user.get("email", "-")) # -


Удобно, когда не уверен, что ключ точно есть в словаре — исключения не будет.
Что выведет следующий код?
Anonymous Quiz
23%
10
31%
10, 20
46%
Ошибка выполнения
0%
None
🔹 enumerate() — индексы в цикле for

Функция enumerate() позволяет перебирать элементы вместе с их индексами.
Удобна при работе со списками, когда нужен и элемент, и его позиция.

➡️ Пример:

fruits = ["яблоко", "банан", "вишня"]

for index, fruit in enumerate(fruits):
print(index, fruit)

0 яблоко
1 банан
2 вишня


enumerate() делает код чище и заменяет ручной счётчик.
Зачем используется функция filter() в Python и когда её применять?

Функция filter() возвращает итератор, содержащий только те элементы из итерируемого объекта, для которых заданная функция возвращает True. Это удобно, когда нужно отфильтровать данные по условию, не создавая лишних списков вручную.

Пример:

users = [
{"name": "Alice", "active": True},
{"name": "Bob", "active": False},
{"name": "Charlie", "active": True}
]

active_users = list(filter(lambda u: u["active"], users))
print(active_users)
# ➜ [{'name': 'Alice', 'active': True}, {'name': 'Charlie', 'active': True}]


📌 В этом примере filter() возвращает только активных пользователей.

filter() удобно использовать для очистки данных, предобработки перед ML, фильтрации списков, словарей и генераторов. Это делает код компактным и избавляет от явных циклов, особенно в функциональном стиле.
Что выведет следующий код?
Anonymous Quiz
56%
'try'
28%
'finally'
0%
'except'
15%
Ошибка выполнения
👍1
🔹 Что делает *

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

Пример:
numbers = [1, 2, 3]
print(*numbers) # Вывод: 1 2 3


Или объединение:
a = [1, 2]
b = [3, 4]
combined = [*a, *b] # [1, 2, 3, 4]


Также *args используется в функциях для сбора неограниченного числа аргументов.


🔹 Что делает **

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

Пример:
def greet(name, age):
print(f"{name}, {age} лет")

data = {"name": "Анна", "age": 30}
greet(**data) # Эквивалентно greet(name="Анна", age=30)


Также **kwargs используется для сбора именованных аргументов внутри функций.


🧠 Зачем это нужно

• Удобно передавать аргументы из коллекций

• Компактно объединять и копировать структуры

• Повышает читаемость и гибкость кода
Что выведет следующий код?
Anonymous Quiz
18%
[2, 2, 2]
7%
[None, None, None]
36%
[0, 1, 2]
39%
Ошибка выполнения
🔹 lambda — анонимные функции в одну строку

lambda позволяет создавать небольшие функции без имени. Полезно для простых операций, особенно в сочетании с map(), filter() и sorted().

➡️ Пример:

square = lambda x: x ** 2
print(square(5)) # Вывод: 25


Такая функция не требует def и может быть использована сразу, "на месте". Подходит для одноразовых действий, когда обычная функция — избыточна.
🔹 Тернарный оператор — короткий if в одну строку

В Python можно записать простое условие в одну строку с помощью тернарного оператора.
Формат: a if условие else b

➡️ Пример:

age = 18
status = "взрослый" if age >= 18 else "несовершеннолетний"
print(status)

взрослый


Удобно для присваивания значений на основе условий без многострочного if.
Что выведет следующий код?
Anonymous Quiz
48%
Base
30%
Sub
9%
Ошибка выполнения
13%
None
🔹 list comprehension — создание списков в одну строку

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

➡️ Пример:

squares = [x**2 for x in range(1, 6)]
print(squares)

[1, 4, 9, 16, 25]


Подходит для фильтрации, преобразования и генерации данных без лишнего кода.