Python Portal
Всё самое интересное из мира Python Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3GMMF6
Больше📈 Аналитический обзор Telegram-канала Python Portal
Канал Python Portal (@pythonportal) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 52 335 подписчиков, занимая 2 560 место в категории Технологии и приложения и 11 934 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 52 335 подписчиков.
Согласно последним данным от 13 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -821, а за последние 24 часа — -28, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 9.36%. В первые 24 часа после публикации контент обычно набирает 5.67% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 4 902 просмотров. В течение первых суток публикация набирает 2 970 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 26.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как строка, none, true, модуль, peter.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Всё самое интересное из мира Python
Сотрудничество, реклама: @devmangx
Менеджер: @Spiral_Yuri
РКН: https://clck.ru/3GMMF6”
Благодаря высокой частоте обновлений (последние данные получены 14 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
ty становится всё лучше
Если ты ссылаешься на символ или модуль, который был добавлен в более новой версии Python, вам сообщат об этом, а также укажут, где и почему была выведена поддерживаемая версия Python 😎
👉 @PythonPortals.remove(4) выбрасывает KeyError, если элемента нет
> s.discard(4) просто молчит и продолжает работу дальше
Оба метода удаляют элементы, но ведут себя по-разному при отсутствии значения.
remove() — строго, discard() — спокойно
Такой подход помогает гибко управлять логикой в зависимости от ситуации:
> нужно жёстко контролировать наличие элемента — используй remove()
> хочешь без лишних исключений — discard() в помощь
Ставь лайк, если разобрался 🚶♀️
👉 @PythonPortal"CodeRabbit" и нажмите Install 😈
👉 @PythonPortal🖱 Просто выбери нужное и получай топовые материалы каждый день!
ElementTree, но в модуле xml есть и другие способы работы с XML
Функция create_xml(filename): создаёт XML-файл с заданным именем.
def create_xml(filename):
Затем создаём элементы:
root = xml.Element("Appointments")
appt = xml.Element("subAppointment")
root.append(appt)
> Appointments — корневой элемент
> subAppointment — дочерний элемент, добавляется к корню
Добавляем вложенный элемент:
begin = xml.SubElement(appt, "begin")
begin.text = "1181251680"
В subAppointment добавляется подэлемент <begin>, содержащий текст
Сериализация и запись в файл:
tree = xml.ElementTree(root)
with open(filename, "wb") as fh:
tree.write(fh)
> Создаётся дерево ElementTree из корня.
> Файл открывается в бинарном режиме записи (wb).
> XML записывается в файл
Запускаем из консоли:
if __name__ == "__main__":
create_xml("appt.xml")
Если скрипт запущен напрямую — вызывается функция create_xml с именем выходного файла "appt.xml"
В результате создаётся XML-файл:
<Appointments>
<subAppointment>
<begin>1181251680</begin>
</subAppointment>
</Appointments>
Готовый и читаемый XML-документ 😈
👉 @PythonPortalmatch case для сопоставления дней недели с задачами. Например, case 'monday' срабатывает, если значение переменной day равно 'monday', и возвращает 'learn Python'.
Подход с match-case более читаемый по сравнению с традиционным if, особенно при работе с большим числом условий
Ставь лайк если это полезно для тебя 😈
👉 @PythonPortalГлава 1: Привет, мир! (тык); Глава 2: Шаблоны (тык); Глава 3: Веб-формы (тык); Глава 4: База данных (тык); Глава 5: Логины пользователей (тык); Глава 6: Страница профиля и аватары (тык); Глава 7: Обработка ошибок (тык); Глава 8: Подписчики (тык); Глава 9: Разбивка на страницы (тык); Глава 10: Поддержка электронной почты (тык); Глава 11: Дизайн приложения (тык); Глава 12: Дата и время (тык); Глава 13: I18n и L10n (тык); Глава 14: Ajax (тык); Глава 15: Улучшенная структура приложения (тык); Глава 16: Полнотекстовый поиск (тык); Глава 17: Развертывание на Linux (тык); Глава 18: Развертывание на Heroku (тык); Глава 19: Развертывание на контейнерах Docker (тык); Глава 20: Немного магии JavaScript (тык); Глава 21: Уведомления пользователей (тык); Глава 22: Фоновые задания (тык); Глава 23: Интерфейсы прикладного программирования (API) (тык).Налетайте ☕️ 👉 @PythonPortal
group3, если нет — в group2, если и там нет — в group1:
age = group3.get(name, group2.get(name, group1.get(name)))
Работает, но нечитаемо и неудобно, особенно при большом количестве словарей.
Лучше используй ChainMap для чистой логики с подстановкой по умолчанию
m = ChainMap(group3, group2, group1)
age = m.get("ana")
Создается объект ChainMap, который объединяет словари по приоритету:
Просто вызываешь m.get(key) — он сам идет по цепочке, пока не найдет ключ
Даже если ключ есть в нескольких словарях, берётся первое вхождение по приоритету
👉 @PythonPortal«Создай ячейку с кодом, который загружает CSV-файл и строит график»И он реально создаст такую ячейку в Jupyter и запустит её Полностью open-source и бесплатен для использования 😎
Counter из модуля collections
Например у нас словарь, где ключ — это ID устройства, а значение — его производитель.
devices_vendors = {
'device001': 'Cisco',
'device002': 'Juniper',
'device003': 'Cisco',
'device004': 'Arista',
'device005': 'Cisco'
}
> Выполняем подсчёт:
vendor_counts = Counter(devices_vendors.values())
Здесь берутся все значения из словаря (.values()), т.е. список вендоров: ['Cisco', 'Juniper', 'Cisco', 'Arista', 'Cisco'], и Counter считает, сколько раз каждый встретился.
> Выводим и получаем:
Counter({'Cisco': 3, 'Juniper': 1, 'Arista': 1})
👉 @PythonPortal
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
