Каталог каналов Мои подборки Мои каналы Поиск постов Рекламные посты
Инструменты
Каталог TGAds Мониторинг Детальная статистика Анализ аудитории Бот аналитики
Полезная информация
Инструкция Telemetr Документация к API Чат Telemetr
Полезные сервисы

Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или подписчиков Проверить канал на накрутку
Прикрепить Телеграм-аккаунт Прикрепить Телеграм-аккаунт

Телеграм канал «Постоянный репозиторий по Python»

Постоянный репозиторий по Python
353
0
1
0
383
Подписчики
Всего
1 839
Сегодня
0
Просмотров на пост
Всего
228
ER
Общий
8.65%
Суточный
5.4%
Динамика публикаций
Telemetr - сервис глубокой аналитики
телеграм-каналов
Получите подробную информацию о каждом канале
Отберите самые эффективные каналы для
рекламных размещений, по приросту подписчиков,
ER, количеству просмотров на пост и другим метрикам
Анализируйте рекламные посты
и креативы
Узнайте какие посты лучше сработали,
а какие хуже, даже если их давно удалили
Оценивайте эффективность тематики и контента
Узнайте, какую тематику лучше не рекламировать
на канале, а какая зайдет на ура
Попробовать бесплатно
Показано 7 из 353 постов
Смотреть все посты
Пост от 02.07.2026 10:14
12
0
0
🐍 Python 3.14 стал быстрее запускать программы — без изменения вашего кода

Обычно, когда выходит новая версия Python, разработчики ждут новый синтаксис или новые функции.
Но одно из самых полезных нововведений Python 3.14 вообще не связано с написанием кода.

Новый JIT-компилятор
В Python 3.14 появилась экспериментальная поддержка JIT-компиляции (Just-In-Time).  
Если раньше интерпретатор выполнял каждую инструкцию последовательно, то теперь наиболее часто выполняемые участки программы могут компилироваться в машинный код прямо во время работы.

Что это даёт?
Без каких-либо изменений в программе можно получить:
✅ более быстрое выполнение вычислений;
✅ ускорение длительных циклов;
✅ лучшую производительность вычислительных задач.
То есть иногда достаточно просто обновить Python.

Нужно ли переписывать код?
Нет.
Например, такой код:
 
total = 0
 
for i in range(10_000_000):
    total += i
 
останется абсолютно тем же.
Но в будущем именно такие участки смогут выполняться быстрее благодаря JIT.

Есть ли ограничения?
Да.
На сегодняшний день JIT:
экспериментальный;
не включён по умолчанию;
приносит пользу не всем типам программ.
Если ваш скрипт работает несколько миллисекунд, разницы вы, скорее всего, не заметите.
А вот для длительных вычислений потенциал очень интересный.  

Почему это важно?
Много лет Python критиковали за скорость.
И хотя существуют PyPy, Cython и другие решения, теперь разработчики CPython постепенно внедряют ускорение в сам язык.
Это значит, что в ближайшие годы Python будет становиться быстрее без необходимости менять привычный стиль программирования.

💡 Интересный факт
Ускорение Python — это не одно большое обновление, а серия небольших улучшений.
Начиная с Python 3.11 каждая новая версия постепенно оптимизирует работу интерпретатора. Python 3.14 продолжает эту стратегию, добавляя экспериментальный JIT.
🔥 1
Пост от 27.06.2026 10:25
19
0
0
Пост от 27.06.2026 10:25
19
0
0
Пост от 25.06.2026 10:12
39
0
0
🐍 Сможете предсказать результат?
 
Попробуйте ответить не запуская код.
 
numbers = [1, 2, 3]
 
print(numbers * 3)
print(numbers + [4, 5])
print([numbers] * 3)
 
Какой вариант, по вашему мнению, будет правильным?
 
Большинство без проблем отвечают на первые две строки:
 
numbers * 3 создаёт новый список: [1, 2, 3, 1, 2, 3, 1, 2, 3]
 
А numbers + [4, 5] объединяет два списка: [1, 2, 3, 4, 5]
 
Но третья строка уже гораздо интереснее.
[numbers] * 3
Результат выглядит так:
[[1, 2, 3],
 [1, 2, 3],
 [1, 2, 3]]
Кажется, что Python создал три независимых списка.
 
Но это не так.
Проверим:

matrix = [numbers] * 3
 
matrix[0].append(4)
 
print(matrix)
 
Получим:
[[1, 2, 3, 4],
 [1, 2, 3, 4],
 [1, 2, 3, 4]]
 
Изменились все три строки.

Почему так происходит?

Оператор * не копирует вложенные объекты. Он копирует ссылки на них.
В результате все элементы списка указывают на один и тот же объект в памяти.

Это одна из самых частых ошибок
Подобная конструкция регулярно встречается при создании:
- матриц;
- игровых полей;
- двумерных массивов;
- таблиц динамического программирования.

И может привести к очень неожиданным ошибкам.

Как сделать правильно?

Если нужны независимые вложенные списки, используйте генератор списка:
matrix = [[1, 2, 3] for _ in range(3)]
 
Теперь каждая строка будет отдельным объектом.

💡 Запомните правило

Если используете оператор * со вложенными изменяемыми объектами — подумайте дважды.
Он копирует не сами объекты, а ссылки на них.
🔥 1
Пост от 18.06.2026 10:41
22
0
0
🔥 1
Пост от 18.06.2026 10:41
7
0
0
Пост от 17.06.2026 10:38
40
0
0
Знаете ли вы, что функции в Python – это обычные объекты?
 
Во многих языках функции – это что-то особенное.
 
В Python функции можно:
 
- сохранять в переменные;
- передавать как аргументы;
- возвращать из других функций;
- хранить в списках и словарях.
 
Например:
 
def greet(name):
    return f"Привет, {name}!"
 
say_hello = greet
 
print(say_hello("Артём"))
 
Результат:
Привет, Артём!
 
Хотя мы вызвали не greet(), а say_hello().
 
Зачем это вообще нужно?
 
Представьте калькулятор:
 
def add(a, b):
    return a + b
 
def multiply(a, b):
    return a * b
 
operations = {
    "+": add,
    "*": multiply
}
 
print(operations["*"](3, 4))
 
Результат:
12
 
То есть вместо длинных конструкций if-elif можно просто выбрать нужную функцию.
Где это используется на практике?
 
Вы удивитесь, но буквально везде:
 
✅ sorted(key=...)
 
sorted(words, key=len)
 
Здесь len передаётся как объект.
 
✅ map()
 
map(str.upper, words)
 
✅ декораторы
 
@login_required
def profile():
    ...
 
✅ обработчики событий в GUI
 
Почему это важно понимать?
 
Когда осознаёшь, что функция – это такой же объект, как число или строка, начинаешь писать гораздо более гибкий код.
 
И многие «магические» конструкции Python становятся понятными.
 
Интересный факт
 
Проверить, что функция – это объект, можно так:
 
print(type(len))
 
Получите:
<class 'builtin_function_or_method'>
 
Вывод
 
В Python функции – это данные.
 
Именно благодаря этому язык поддерживает:
 
- декораторы;
- функциональный стиль;
- гибкие API;
- множество элегантных решений.
🔥 2
🤝 2
1
Смотреть все посты