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) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
datetime.strptime() используйте "%f" для разбора микросекунд
from datetime import datetime
dt = datetime.strptime('2024-06-18 12:34:56.789123', '%Y-%m-%d %H:%M:%S.%f')
🔸'%Y-%m-%d %H:%M:%S.%f' — формат строки:
> %Y — год (4 цифры)
> %m — месяц
> %d — день
> %H — часы (24ч)
> %M — минуты
> %S — секунды
> %f — микросекунды
Результат:
datetime.datetime(2024, 6, 18, 12, 34, 56, 789123)То есть строка успешно преобразована в объект datetime со всеми компонентами, включая микросекунды. Это полезно, когда нужно точно работать с временными метками в логах, метриках, или временных рядах 💩 👉 @PythonPortal
difflib. С её помощью можно находить наиболее похожие строки в списке строк.
Вот пример:
words = ["apple", "ape", "appeal", "par", "parade"]
это список строк, среди которых ищем похожие.
difflib.get_close_matches("appel", words)
Ищет строки, похожие на "appel". Вернёт: ['appeal', 'apple', 'ape']
→ По степени схожести.
difflib.get_close_matches("pa", words)
Ищет похожие на "pa". Вернёт: ['par']
difflib.get_close_matches("par", words)
Ищет похожие на "par". Вернёт: ['par', 'parade']
→ parade похожа по началу.
👉 @PythonPortalpop() для изменения или создания нового ключа со значением из существующего ключа.
Допустим, мы хотим заменить ключ "school" на "university" в приведённом ниже словаре. Первый шаг — использовать метод pop() для удаления старого ключа и получения его значения. Второй шаг — создать новый ключ и присвоить ему значение удалённого ключа. Смотрите код ниже:
# Исходный словарь
my_dict = {'school': 'Yale', 'age': 22}
# Шаг 1: Удалить старый ключ и получить его значение
old_value = my_dict.pop('school')
# Шаг 2: Создать новый ключ с нужным именем и присвоить значение
my_dict['university'] = old_value
print(my_dict)
Результат:
{'age': 22, 'university': 'Yale'}
Как видно, ключ "school" был заменён на "university". Учтите, что данный процесс по сути создаёт новый ключ, сохраняя исходное значение 🙂
👉 @PythonPortalmyList = []
> имеют методы, такие как: .sort(), .append()
> состоят из упорядоченных групп элементов
> итерируются циклами
ELEMENTS
> находятся по индексам
> могут быть изменены через присваивание: myList[ind] = x
> могут быть типов: int, string, list, …
INDEXES
> используют синтаксис: myList[ind]
> вперёд: от 0 до length-1
> назад: от -1 до -length
> нужны для присваивания
LOOPS
> проходят по списку последовательно
> часто используют идиомы, например:
for elem in myList:
# делаем что-то
TUPLES
> неизменяемы
👉 @PythonPortalfilter() используется для фильтрации элементов из итерируемого объекта на основе заданного условия. Она принимает два аргумента: функцию и итерируемый объект. Возвращает итератор, содержащий элементы, которые удовлетворяют условию.
Предположим, у вас есть список чисел, и вы хотите отфильтровать из него только чётные числа. Вы можете использовать функцию filter:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
even_numbers
Результат:
[2, 4, 6, 8]Обратите внимание, что функция filter использует критерий, заданный функцией
lambda, чтобы отфильтровать чётные числа из списка numbers. filter возвращает итератор, поэтому мы используем функцию list(), чтобы извлечь чётные числа в виде списка.
Функция filter() — мощный инструмент для выбора элементов из итерируемых объектов на основе пользовательских условий. Ниже приведены другие способы использования функции filter() в коде:
Фильтрация строк по длине
Если у вас есть список строк, и вы хотите отфильтровать строки определённой длины, вы можете использовать функцию filter(). Предположим, вы хотите получить из списка только те строки, длина которых меньше 5 символов. Вот пример того, как это можно сделать:
words = ["apple", "banana", "kiwi", "grape"]
# Функция, передаваемая в filter
def filter_words(x):
return x if len(x) < 5 else None
short_words = list(filter(filter_words, words))
print(short_words)
Результат:
['kiwi']👉 @PythonPortal
defaultdict из модуля collections, чтобы автоматически создавать значения для отсутствующих ключей. В отличие от обычного dict, он не выбрасывает KeyError
Пример:
from collections import defaultdict
department_groups = defaultdict(list)
for name, department in employees:
department_groups[department].append(name)
Не нужно проверять наличие ключа. defaultdict(list) автоматически создаёт пустой список при первом обращении 😈
С обычным dict:
department_groups = {}
for name, department in employees:
if department in department_groups:
department_groups[department].append(name)
else:
department_groups[department] = [name]
Нужно вручную проверять наличие ключа и инициализировать список 👀
defaultdict делает код чище, короче и безопаснее при работе с вложенными структурами
👉 @PythonPortal.com на .chat.ai в URL любого репозитория — и ты сможешь напрямую общаться с кодом 😎
Это меняет правила игры для быстрого понимания и навигации по проекту
👉 @PythonPortalpathlib можно получить доступ к различным частям пути, таким как имя файла, расширение и родительский каталог. Это упрощает обработку и анализ файловых путей
> Имя файла с расширением:
>>> path.name 'test.md'> Имя файла без расширения:
>>> path.stem 'test'> Расширение файла:
>>> path.suffix '.md'> Родительский каталог:
>>> path.parent
PosixPath('C:/Users')
👉 @PythonPortalty становится всё лучше
Если ты ссылаешься на символ или модуль, который был добавлен в более новой версии Python, вам сообщат об этом, а также укажут, где и почему была выведена поддерживаемая версия Python 😎
👉 @PythonPortal
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
