Каталог каналов Каналы в закладках Мои каналы Поиск постов Рекламные посты
Инструменты
Каталог TGAds beta Мониторинг Детальная статистика Анализ аудитории Бот аналитики
Полезная информация
Инструкция Telemetr Документация к API Чат Telemetr
Полезные сервисы

Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или подписчиков Проверить канал на накрутку
Прикрепить Телеграм-аккаунт Прикрепить Телеграм-аккаунт

Телеграм канал «Постоянный репозиторий по Python»

Постоянный репозиторий по Python
104
0
1
0
383
Подписчики
Всего
1 893
Сегодня
-1
Просмотров на пост
Всего
371
ER
Общий
17.53%
Суточный
10.3%
Динамика публикаций
Telemetr - сервис глубокой аналитики
телеграм-каналов
Получите подробную информацию о каждом канале
Отберите самые эффективные каналы для
рекламных размещений, по приросту подписчиков,
ER, количеству просмотров на пост и другим метрикам
Анализируйте рекламные посты
и креативы
Узнайте какие посты лучше сработали,
а какие хуже, даже если их давно удалили
Оценивайте эффективность тематики и контента
Узнайте, какую тематику лучше не рекламировать
на канале, а какая зайдет на ура
Попробовать бесплатно
Показано 7 из 104 постов
Смотреть все посты
Пост от 12.02.2026 10:21
124
0
0
1
🔥 1
🥰 1
👏 1
Пост от 12.02.2026 10:21
124
0
0
Изображение
👏 2
👍 1
😁 1
Пост от 11.02.2026 09:03
229
0
1
Почему defaultdict часто лучше обычного dict

Очень знакомый код:
counts = {}

for x in data:
if x in counts:
counts[x] += 1
else:
counts[x] = 1

Работает. Но выглядит шумно и легко ошибиться.

То же самое — проще и надёжнее 👇
from collections import defaultdict

counts = defaultdict(int)

for x in data:
counts[x] += 1

В чём магия defaultdict?

defaultdict сам создаёт значение по умолчанию, если ключа ещё нет.
d = defaultdict(list)
d["a"].append(1)

Без KeyError. Без if.
Типичные сценарии
1️⃣ Подсчёт частот
defaultdict(int)

2️⃣ Группировка данных
groups = defaultdict(list)

for user, score in data:
groups[user].append(score)

3️⃣ Накопление значений
sums = defaultdict(float)

Как это выглядит с обычным dict

if key not in d:
d[key] = []
d[key].append(value)

Частая ошибка ❌
d = {}
d[key].append(value) # KeyError

defaultdict решает это одной строкой.

Когда defaultdict использовать НЕ стоит?
⚠️ Когда:
• важно строго контролировать наличие ключей
• KeyError — часть логики
• код читают люди, не знающие Python (редко, но бывает)

Полезно помнить
defaultdict(int) # 0
defaultdict(list) # []
defaultdict(set) # set()
Можно передать любую функцию, создающую значение по умолчанию.
🔥 4
🥰 1
👏 1
Пост от 07.02.2026 09:37
407
0
0
👍 3
🔥 3
🥰 2
Пост от 07.02.2026 09:37
391
0
0
🔥 4
🥰 1
👏 1
Пост от 04.02.2026 09:51
435
0
0
🐍 is vs == – в чём разница и почему это важно

Очень частая ошибка в Python:
if a is b:
...

Когда на самом деле нужно было:
if a == b:
...

Что делает ==?

== сравнивает значения объектов.

a = [1, 2, 3]
b = [1, 2, 3]

print(a == b) # True

Значения одинаковые → True.

Что делает is?

is проверяет, являются ли это одним и тем же объектом в памяти.

print(a is b) # False

Два разных списка → разные объекты.

Классический пример, который путает новичков

x = 256
y = 256

print(x == y) # True
print(x is y) # True 😳

Когда is использовать ПРАВИЛЬНО?
👉 Для проверки на None:
if value is None:
...

👉 Для сравнения с True / False — никогда:

# плохо
if flag is True:

# правильно
if flag:

Краткое правило
• == → сравнение значений
• is → проверка идентичности объекта
• is почти всегда нужен только для None
🔥 5
👍 3
🤝 2
1
Пост от 29.01.2026 10:30
418
0
0
🔥 3
👍 2
👏 1
Смотреть все посты