ar
Feedback
🐍 Укус питона 🐍

🐍 Укус питона 🐍

الذهاب إلى القناة على Telegram

🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки. 👽 Админ - @tg_adminisrator 🔊 Купить рекламу: https://telega.in/c/byteofpython 👉 Чат: @abyteofpython 👉 Поделиться с друзьями: @byteofpython

إظهار المزيد
2 334
المشتركون
لا توجد بيانات24 ساعات
-117 أيام
-3730 أيام
أرشيف المشاركات

👩‍💻 functools.lru_cache — кэширование результатов функций Декоратор lru_cache из модуля functools сохраняет результаты вызовов функции, чтобы не пересчитывать их заново.
Это ускоряет работу, особенно для тяжёлых вычислений.
➡️ Пример:
from functools import lru_cache

@lru_cache(maxsize=None)
def fib(n):
    if n < 2:
        return n
    return fib(n-1) + fib(n-2)

print(fib(30))  # Считает быстро благодаря кэшу
📌 Полезно для рекурсивных функций, работы с API или долгих расчётов.
maxsize ограничивает количество сохранённых результатов (или None для безлимита).

Ответ:
Anonymous voting

Что выведет следующий код?
Что выведет следующий код?

photo content

👩‍💻 itertools.cycle — бесконечный цикл по списку Функция cycle() из модуля itertools позволяет бесконечно перебирать элементы последовательности по кругу. ➡️ Пример:
from itertools import cycle

colors = ["red", "green", "blue"]

for i, color in zip(range(7), cycle(colors)):
    print(color)


red  
green  
blue  
red  
green  
blue  
red
📌 Удобно для создания повторяющихся шаблонов, переключения состояний или циклической анимации
Работает с любыми итерируемыми объектами

👩‍💻 dataclasses — меньше кода для классов с данными Модуль dataclasses позволяет быстро описывать классы-хранилища данных без лишнего шаблонного кода. ➡️ Пример:
from dataclasses import dataclass

@dataclass
class User:
    name: str
    age: int = 0

u = User("Анна", 25)
print(u)  # User(name='Анна', age=25)
📌 Что даёт @dataclass: Автоматически создаёт __init__, __repr__, __eq__ Поддерживает значения по умолчанию • Можно добавлять методы, как в обычном классе
Идеально подходит для структурированных объектов — например, при работе с API, конфигами или моделями

Ответ:
Anonymous voting

Что выведет следующий код?
Что выведет следующий код?

photo content

👩‍💻 slice — продвинутая нарезка последовательностей Объект slice позволяет создавать диапазоны с шагом, которые можно применять к спискам, строкам и другим последовательностям. ➡️ Пример:
text = "Программирование"
s = slice(0, 10, 2)

print(text[s])  # Погрмр
📌 slice(start, stop, step) — аналог среза text[0:10:2], но его можно передавать как переменную.
Полезно, когда срез нужно вычислять динамически или передавать в функцию

👩‍💻 setdefault() — безопасное добавление в словарь Метод setdefault() используется для получения значения по ключу из словаря, одновременно создавая его, если ключа ещё нет. ➡️ Пример:
data = {}
data.setdefault("users", []).append("Анна")
data.setdefault("users", []).append("Борис")

print(data)

{'users': ['Анна', 'Борис']}
📌 Удобно при работе с коллекциями внутри словаря — не нужно проверять наличие ключа вручную. Альтернатива конструкции с if key not in dict.

Что выведет следующий код?
Anonymous voting

Что выведет следующий код?
Что выведет следующий код?

Зачем используется метод strip() в Python и когда его применять? Метод strip() удаляет начальные и конечные пробелы (а также другие переданные символы) из строки. Это удобно для очистки ввода, сравнения данных и предобработки текста. Пример:
user_input = "  hello world  "
cleaned = user_input.strip()
print(cleaned)
# ➜ "hello world"
📌В этом примере strip() убирает лишние пробелы по краям строки, оставляя только значимый текст.
strip() удобно использовать при чтении из файлов, работе с формами, разборе CSV/JSON и валидации пользовательского ввода. Также существуют .lstrip() и .rstrip() — для удаления только слева или справа. Метод делает работу с текстом точной и предсказуемой

photo content

👩‍💻 collections.Counter — быстрый подсчёт элементов Класс Counter из модуля collections — это удобный способ посчитать, сколько раз каждый элемент встречается в последовательности. ➡️ Пример:
from collections import Counter

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

print(counted)

Counter({'банан': 3, 'яблоко': 2, 'вишня': 1})
📌 Можно использовать .most_common(), сложение/вычитание счётчиков и другие операции. Очень полезен при анализе текста, логов или при решении задач на частоту.

Ответ:
Anonymous voting

Что выведет следующий код?
Что выведет следующий код?

photo content