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.
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
Available now! Telegram Research 2025 — the year's key insights 
