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

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

👉 Чат: @abyteofpython
👉 Поделиться с друзьями: @byteofpython
Download Telegram
Что выведет следующий код?
Anonymous Quiz
15%
None
44%
2
41%
StopIteration
0%
Ошибка выполнения
👩‍💻 enumerate() — индексы и значения в одном цикле

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

Это чище и безопаснее, чем range(len(...)).


➡️ Пример:

names = ["Анна", "Борис", "Вера"]

for i, name in enumerate(names):
print(f"{i}: {name}")

0: Анна
1: Борис
2: Вера


📌 Удобно при нумерации, логировании, отладке и генерации пар (индекс + значение).
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 lambda — анонимные функции в одну строку

lambda в Python позволяет создавать короткие безымянные функции "на лету".

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


➡️ Пример:

nums = [3, 1, 5, 2, 4]

# Сортируем по убыванию с помощью lambda
sorted_nums = sorted(nums, key=lambda x: -x)

print(sorted_nums) # [5, 4, 3, 2, 1]


📌 lambda-функция здесь возвращает отрицательное значение числа, что меняет порядок сортировки.
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет следующий код?
👩‍💻 any() и all() — проверка условий для коллекций

Функции any() и all() позволяют проверить, соответствуют ли элементы коллекции какому-либо условию.

🟢any() возвращает True, если хотя бы один элемент — истинный

🟢all() возвращает True, если все элементы — истинные


➡️ Пример:

scores = [80, 90, 75, 0]

print(any(scores)) # True — есть хотя бы одно ненулевое значение
print(all(scores)) # False — есть 0


📌 Полезны для фильтрации, валидации и сокращения логики if. Работают с любыми итерируемыми объектами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 walrus оператор := — присваивание внутри выражений

Оператор :=, прозванный "моржовым" (walrus operator), позволяет присваивать значение переменной прямо внутри выражения — например, в условии if или while.

➡️ Пример:

data = input("Введите имя (или leave): ")

while (name := data) != "leave":
print(f"Привет, {name}!")
data = input("Введите имя (или leave): ")


📌 Здесь name := data присваивает и сразу использует переменную. Без этого пришлось бы дублировать input(...).
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет следующий код?
👩‍💻 collections.Counter — быстрый подсчёт элементов

Класс Counter из модуля collections — это удобный способ посчитать, сколько раз каждый элемент встречается в последовательности.

➡️ Пример:

from collections import Counter

words = ["яблоко", "банан", "яблоко", "вишня", "банан", "банан"]
counted = Counter(words)

print(counted)

Counter({'банан': 3, 'яблоко': 2, 'вишня': 1})


📌 Можно использовать .most_common(), сложение/вычитание счётчиков и другие операции.
Очень полезен при анализе текста, логов или при решении задач на частоту.
Please open Telegram to view this post
VIEW IN TELEGRAM
Зачем используется метод strip() в Python и когда его применять?

Метод strip() удаляет начальные и конечные пробелы (а также другие переданные символы) из строки. Это удобно для очистки ввода, сравнения данных и предобработки текста.

Пример:

user_input = "  hello world  "
cleaned = user_input.strip()
print(cleaned)
# ➜ "hello world"


📌В этом примере strip() убирает лишние пробелы по краям строки, оставляя только значимый текст.

strip() удобно использовать при чтении из файлов, работе с формами, разборе CSV/JSON и валидации пользовательского ввода. Также существуют .lstrip() и .rstrip() — для удаления только слева или справа. Метод делает работу с текстом точной и предсказуемой
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет следующий код?
👩‍💻 setdefault() — безопасное добавление в словарь

Метод setdefault() используется для получения значения по ключу из словаря, одновременно создавая его, если ключа ещё нет.

➡️ Пример:

data = {}
data.setdefault("users", []).append("Анна")
data.setdefault("users", []).append("Борис")

print(data)

{'users': ['Анна', 'Борис']}


📌 Удобно при работе с коллекциями внутри словаря — не нужно проверять наличие ключа вручную. Альтернатива конструкции с if key not in dict.
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 slice — продвинутая нарезка последовательностей

Объект slice позволяет создавать диапазоны с шагом, которые можно применять к спискам, строкам и другим последовательностям.

➡️ Пример:

text = "Программирование"
s = slice(0, 10, 2)

print(text[s]) # Погрмр


📌 slice(start, stop, step) — аналог среза text[0:10:2], но его можно передавать как переменную.

Полезно, когда срез нужно вычислять динамически или передавать в функцию
Please open Telegram to view this post
VIEW IN TELEGRAM