Logo
TGCATALOG
Каталог Подборки Блог
Код на салфетке - Python кодинг

Код на салфетке - Python кодинг

Канал о программировании на Python и других языках. Простые объяснения и коды.

Нет оценок
319
28.10.2026
319
28.10.2026
Нет оценок
319
28.10.2026
Безопасный переход через бот
О канале

Канал о программировании на Python и других языках. Простые объяснения и коды.

Подписчиков 2,347
Тематика Технологии
Язык Русский
Ссылка t.me/napkincode

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

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

Описание

Ресурс для интересующихся программированием. Фокус на Python, но охватывает и другие темы. Простые примеры и разборы.

Последние посты

Код на салфетке - Python кодинг
Код на салфетке - Python кодинг
🔒Открыть пост
и посмотреть медиа
Знаете ли вы, что defaultdict создает записи при чтении? Удобно использовать defaultdict чтобы не проверять наличие ключей. Но с ним есть подвох: обращение к несуществующему ключу через d[key] не просто вернет значение по умолчанию, а создаст запись в словаре. Словарь растет просто от того, что его читают: from collections import defaultdict d = defaultdict(list) print(len(d)) # 0 # Читаем несуществующий ключ result = d["users"] print(len(d)) # 1 print(d) # defaultdict(, {'users': []}) # Ключ 'users' теперь существует в словаре Обращение через d["users"] вызвало factory-функцию (list), создало пустой список и записало его в словарь. Это не баг – так работает __missing__, который defaultdict переопределяет. Проблема становится особенно заметной в циклах: from collections import defaultdict config = defaultdict(str) config["host"] = "localhost" config["port"] = "5432" # Проверяем наличие опциональных ключей optional_keys = ["timeout", "ssl", "pool_size"] for key in optional_keys: value = config[key] # Вместо проверки – создаются записи print(dict(config)) # {'host': 'localhost', 'port': '5432', 'timeout': '', 'ssl': '', 'pool_size': ''} # Три мусорных ключа из ниоткуда Каждый config[key] для несуществующего ключа создал пустую строку и сохранил ее. Если потом итерироваться по config или сериализовать его – в данных будет мусор. Безопасная альтернатива – .get(), который не трогает словарь: from collections import defaultdict d = defaultdict(list) # .get() не вызывает __missing__ result = d.get("users") print(result) # None print(len(d)) # 0 # Проверка через in тоже безопасна print("users" in d) # False print(len(d)) # 0 .get() возвращает None (или указанный default), но не создает запись. Оператор in тоже не вызывает __missing__. defaultdict вызывает factory-функцию и создает запись при любом обращении через d[key] к несуществующему ключу. Для безопасного чтения без побочных эффектов лучше использовать .get() или проверку через in. Код на салфетке x Кусочки кода
Код на салфетке - Python кодинг
Динамика подписчиков
+-0.4% за 30 дней
Текущие
2,347
Месяц назад
2,356
Средний рост
+0 / день
Обновлено
1 день назад

Отзывы о канале Код на салфетке - Python кодинг

Авторизуйтесь, чтобы оставить отзыв

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

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход