Однажды в трендах
117K subscribers
2.55K photos
65 videos
611 links
Что-то на айтишном про айти.

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
Download Telegram
🧊 Заморозить словарь: types.MappingProxyType

Иногда нужно передать неизменяемый словарь, чтобы никто не мог случайно его изменить. Для этого есть
MappingProxyType из модуля types.

Сам original можно изменять, а frozen — нет.

🎯 Итог
MappingProxyType — способ создать защищённый от изменений "словарь-обёртку", полезный в API и конфигурациях.
🧑‍💻 За последние 10 лет число вакансий в Data Science выросло в 30 раз, а медианная зарплата находится на уровне 200 000 рублей в месяц

Многие специалисты смежных профессий задумываются о смене профиля, задаются вопросами, подходит ли им эта сфера и с чего начать.

Небольшой тест от методологов магистерской программы МФТИ «Науки о данных» поможет понять, какую специализацию выбрать и как построить карьерный переход.

Первый шаг — перейти по ссылке!
User-Agent

Механизм защиты от скрапинга – User-Agent. UA – это заголовок, который браузеры отправляют в запросах для идентификации. Обычно он представляет собой длинную строку, в которой объявляется имя браузера, версия, платформа и многое другое.
🕵️‍♂️ Проверка, откуда была вызвана функция: inspect.stack()

Если нужно отладить или логировать, кто вызывает функцию — можно использовать модуль inspect.

🎯 Итог
inspect.stack() позволяет заглянуть в стек вызовов и узнать, откуда была вызвана функция — мощный инструмент для отладки и логирования.
🧹 Удаление всех символов, кроме цифр: re.sub()

Когда нужно оставить только цифры в строке (например, при обработке номеров телефонов, ID и т.п.), re.sub() делает это элегантно.

🎯 Итог
re.sub(r"\D", "", text) — быстрый способ избавиться от всего, кроме цифр, в строке. Отлично работает с номерами телефонов и ID.
📌 Объединение нескольких словарей без update()

Обычно для объединения словарей используют .update(), но с Python 3.9 можно делать это удобнее и читаемее — с помощью оператора |.

🎯 Итог
Оператор | — лаконичный способ объединять словари. Второй словарь переопределяет ключи первого.
🧵 Параллельная обработка с concurrent.futures.ThreadPoolExecutor

Если у вас есть список задач, которые можно выполнять параллельно (например, HTTP-запросы или операции ввода-вывода), можно использовать ThreadPoolExecutor вместо обычного цикла.

🎯 Итог
ThreadPoolExecutor — простой способ параллельно обрабатывать независимые задачи, особенно эффективен для I/O-операций.
🧠 Как элегантно "переключать" поведение с помощью словаря функций

Иногда вместо длинных цепочек if или match можно использовать словарь с функциями — это чисто, читаемо и легко расширяемо.

🎯 Итог
Словарь функций — удобный способ заменить условные конструкции, особенно когда логика разветвляется по строковым ключам (например, названиям команд или операций).
Просто почитайте что пишет Саша Моловицын. Кто не знает, это топовый коммерс, который шарит за ритейл, маркетплейсы и е-ком. Его каналу много лет — это один из самых авторитетных блогов по маркетплейсам в Телеграм.

Он нескучно рассказывает про свой опыт работы, разбирает успешные и неудачные ходы марктеплейсов, стебется над клиентами. Также внутри: зачем маркетплейсы запускают свои банки, как реально работает поисковая выдача товаров и почему обязательно надо открывать ПВЗ в 2025 году.

Обычно тематические каналы однотипные и пустые, но Саша классный и бодро пишет. Подписывайтесь на него: https://t.me/+cp392ES5rWBmZWEy
🧠 Как элегантно "переключать" поведение с помощью словаря функций

Иногда вместо длинных цепочек if или match можно использовать словарь с функциями — это чисто, читаемо и легко расширяемо.

🎯 Итог
Словарь функций — удобный способ заменить условные конструкции, особенно когда логика разветвляется по строковым ключам (например, названиям команд или операций).
🧪 🐍 Проверка аргументов функции без лишнего кода с functools.singledispatch

Когда нужно писать разные реализации одной функции в зависимости от типа аргумента, не спеши писать if isinstance(...) — есть элегантнее способ!

🎯 Итог
singledispatch — способ реализовать полиморфизм для функций: избавляет от длинных ветвлений по типам, упрощает поддержку и расширение кода.
🔄 🐍 Ленивая загрузка больших файлов с fileinput

Если ты обрабатываешь большие текстовые файлы построчно и не хочешь грузить всё в память — стандартный модуль fileinput тебе поможет!

Ты можешь указать один или несколько файлов, а fileinput сам построчно и лениво их прочитает. Это работает даже с stdin, если файлы не указаны.

🎯 Итог
fileinput — мощный инструмент для работы с текстовыми файлами: он лаконичен, поддерживает несколько источников и обрабатывает строки по очереди, не засоряя память.
🧮 🔢 Быстрое получение частот элементов с collections.Counter

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

🎯 Итог
collections.Counter — идеальный инструмент для анализа частот: он прост, читаем и очень эффективен.
Получаем все строки как словари

При работе с SQLite результат запроса по умолчанию возвращается в виде кортежей. Это не очень удобно, особенно если нужно обращаться к значениям по названиям колонок. Можно включить специальный режим, чтобы строки возвращались как словари.

🎯 Итог
Используй row_factory = dict_factory, чтобы получать строки из БД как словари. Это упростит доступ к данным и сделает код более читаемым.
📌 🔄 Слияние словарей через оператор |

В Python 3.9+ можно объединять словари так же просто, как множества, с помощью оператора |. Это делает код чище и понятнее, особенно при объединении конфигураций или данных.

🎯 Итог
Оператор | — это быстрый и читаемый способ объединять словари, при этом значения из правого словаря имеют приоритет.
Sony официально ушли из России: компания закрыла последнее юрлицо в стране.

С 2023 года Sony пытались ликвидировать ООО «Сони Мобайл Коммюникейшнз Рус», но удалось сделать это только сейчас.

Ушла эпоха.
Инсайдеры слили ВСЮ линейку свежих iPhone 17 — в сеть утекли цены и характеристики будущих новинок Apple.

Цены за базовую версию стартуют от $799, на iPhone 17 Air — от $950, а самый доступный Pro начинается от $1050.

Подтвердить инфу можно будет уже через месяц — когда пройдёт презентация Apple.
Роскомнадзор официально ПОДТВЕРДИЛ ограничение звонков через Telegram и WhatsApp*.

По словам ведомства, эти мессенджеры стали основными площадками обмана, вымогательства и даже вовлечения в диверсии и теракты.

При этом переписка, пересылка файлов и чтение каналов останутся так же доступны.

*принадлежит Meta, признанной экстремистской и запрещённой в РФ.
Мем дня: в Твиттере придумали, как не переплачивать за свидания — теперь парни просто ищут self-pay девушек.

Гениально.