Python Portal
Всё самое интересное из мира Python Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3GMMF6
Show more📈 Analytical overview of Telegram channel Python Portal
Channel Python Portal (@pythonportal) in the Russian language segment is an active participant. Currently, the community unites 52 329 subscribers, ranking 2 561 in the Technologies & Applications category and 11 945 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 52 329 subscribers.
According to the latest data from 14 June, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -832 over the last 30 days and by -32 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 9.37%. Within the first 24 hours after publication, content typically collects 5.65% reactions from the total number of subscribers.
- Post reach: On average, each post receives 4 902 views. Within the first day, a publication typically gains 2 957 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 25.
- Thematic interests: Content is focused on key topics such as строка, none, true, модуль, peter.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“Всё самое интересное из мира Python
Сотрудничество, реклама: @devmangx
Менеджер: @Spiral_Yuri
РКН: https://clck.ru/3GMMF6”
Thanks to the high frequency of updates (latest data received on 15 June, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
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
Available now! Telegram Research 2025 — the year's key insights 
