👍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
19%
[2, 2, 2]
7%
[None, None, None]
37%
[0, 1, 2]
37%
Ошибка выполнения
🔹 lambda — анонимные функции в одну строку
lambda позволяет создавать небольшие функции без имени. Полезно для простых операций, особенно в сочетании с
➡️ Пример:
lambda позволяет создавать небольшие функции без имени. Полезно для простых операций, особенно в сочетании с
map()
, filter()
и sorted()
.➡️ Пример:
square = lambda x: x ** 2
print(square(5)) # Вывод: 25
Такая функция не требует def и может быть использована сразу, "на месте". Подходит для одноразовых действий, когда обычная функция — избыточна.
🔹 Тернарный оператор — короткий if в одну строку
В Python можно записать простое условие в одну строку с помощью тернарного оператора.
Формат:
➡️ Пример:
В Python можно записать простое условие в одну строку с помощью тернарного оператора.
Формат:
a if условие else b
➡️ Пример:
age = 18
status = "взрослый" if age >= 18 else "несовершеннолетний"
print(status)
взрослый
Удобно для присваивания значений на основе условий без многострочного if.
🔹 list comprehension — создание списков в одну строку
Списковые включения позволяют создавать списки на основе других коллекций кратко и читаемо.
➡️ Пример:
Списковые включения позволяют создавать списки на основе других коллекций кратко и читаемо.
➡️ Пример:
squares = [x**2 for x in range(1, 6)]
print(squares)
[1, 4, 9, 16, 25]
Подходит для фильтрации, преобразования и генерации данных без лишнего кода.
❓ Зачем используется функция
Функция
Это удобно для синхронной обработки данных из разных источников.
✅ Пример:
📌 В этом примере zip() объединяет списки имён и баллов, позволяя пройтись по ним одновременно.
zip()
в Python и когда её применятьФункция
zip()
объединяет несколько итерируемых объектов, возвращая итератор кортежей, где каждый кортеж содержит элементы с одинаковым индексом из всех коллекций.Это удобно для синхронной обработки данных из разных источников.
✅ Пример:
names = ["Alice", "Bob", "Charlie"]
scores = [85, 92, 78]
for name, score in zip(names, scores):
print(f"{name}: {score}")
# ➜ Alice: 85
# ➜ Bob: 92
# ➜ Charlie: 78
📌 В этом примере zip() объединяет списки имён и баллов, позволяя пройтись по ним одновременно.
zip() удобно использовать при работе с таблицами, конфигурациями, CSV-данными, векторными операциями и в ML — когда нужно синхронно итерироваться по признакам и меткам. Код получается чище и безопаснее, чем ручной перебор с индексами.
🔹 zip() + unpacking — параллельный перебор списков
С помощью
А с распаковкой (
➡️ Пример:
А
С помощью
zip()
можно перебирать несколько списков одновременно.А с распаковкой (
*
) удобно разъединять обратно.➡️ Пример:
names = ["Анна", "Борис", "Вера"]
scores = [90, 85, 78]
for name, score in zip(names, scores):
print(f"{name}: {score}")
Анна: 90
Борис: 85
Вера: 78
zip()
помогает работать с данными построчно и синхронно.А
zip(*iterable)
делает обратное — трансформирует строки в колонки.🔹 set() — быстрое удаление дубликатов
Множество (set) хранит только уникальные значения.
Используется для удаления повторов и быстрой проверки принадлежности.
➡️ Пример:
set() — простой способ избавиться от дубликатов в списке. Порядок элементов не сохраняется.
Множество (set) хранит только уникальные значения.
Используется для удаления повторов и быстрой проверки принадлежности.
➡️ Пример:
numbers = [1, 2, 2, 3, 4, 4, 5]
unique = list(set(numbers))
print(unique)
[1, 2, 3, 4, 5]
set() — простой способ избавиться от дубликатов в списке. Порядок элементов не сохраняется.
Что выведет следующий код?
Anonymous Quiz
0%
age будет успешно добавлен
23%
age будет проигнорирован silently
77%
Ошибка выполнения — нельзя добавить новый атрибут
0%
age станет доступным только через __dict__