es
Feedback

¡No caigas en manos de tramposos! Telemetrio encuentra y marca estos canales 👉 Si quieres ver la etiqueta, suscríbete

Библиотека Python разработчика | Книги по питону

Библиотека Python разработчика | Книги по питону

Ir al canal en Telegram

Погружение в CPython и архитектуру. Разбираем неочевидное поведение (GIL, Memory), Best Practices (SOLID, DDD) и тонкости Django/FastAPI. Решаем задачи с подвохом и оптимизируем алгоритмы. 🐍 По всем вопросам @evgenycarter РКН clck.ru/3Ko7Hq

Mostrar más

📈 Análisis del canal de Telegram Библиотека Python разработчика | Книги по питону

El canal Библиотека Python разработчика | Книги по питону (@bookpython) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 17 969 suscriptores, ocupando la posición 7 264 en la categoría Tecnologías y Aplicaciones y el puesto 36 611 en la región Rusia.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 17 969 suscriptores.

Según los últimos datos del 30 octubre, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -95, y en las últimas 24 horas de -1, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 5.36%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 2.75% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 963 visualizaciones. En el primer día suele acumular 494 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 4.
  • Intereses temáticos: El contenido se centra en temas clave como numbers, yield, модуль, none, декоратор.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
“Погружение в CPython и архитектуру. Разбираем неочевидное поведение (GIL, Memory), Best Practices (SOLID, DDD) и тонкости Django/FastAPI. Решаем задачи с подвохом и оптимизируем алгоритмы. 🐍 По всем вопросам @evgenycarter РКН clck.ru/3Ko7Hq”

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 31 octubre, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

17 969
Suscriptores
-124 horas
-287 días
-9530 días
Archivo de publicaciones
Апартаменты в Крыму у моря. Выгоды на старте продаж! ✅ 150 метров до моря ✅ 10 метров до Приморского парка ✅ Эксплуатируемая кровля ✅ Ресторан, спорт зал Получите планировки и цены на сайте: Перейти на сайт Проектная декларация на сайте https://наш.дом.рф/ #реклама mrqz.me О рекламодателе

Когда в Python используется переменная, сначала она ищется в текущей области видимости. Если такая переменная не найдена, поиск продолжается во вложенной области. Это повторяется до тех пор, пока не будет достигнуто глобальное пространство имен.

x = 1
def scope():
    x = 2
    def inner_scope():
        print(x)  # выводит 2
    inner_scope()
scope()
Однако присваивание переменной работает иначе. Новая переменная всегда создается в текущей области видимости, если не указано global или nonlocal:

x = 1
def scope():
    x = 2
    def inner_scope():
        x = 3
        print(x)  # выводит 3
    inner_scope()
    print(x)  # выводит 2
scope()
print(x)  # выводит 1
global позволяет использовать переменные из глобального пространства имен, а nonlocal ищет переменную в ближайшей окружающей области видимости. Сравните:

x = 1
def scope():
    x = 2
    def inner_scope():
        global x
        x = 3
        print(x)  # выводит 3
    inner_scope()
    print(x)  # выводит 2
scope()
print(x)  # выводит 3

x = 1
def scope():
    x = 2
    def inner_scope():
        nonlocal x
        x = 3
        print(x)  # выводит 3
    inner_scope()
    print(x)  # выводит 3
scope()
print(x)  # выводит 1
👉@BookPython

Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск
Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск и Яндекс Книги тоже в подписке. Попробуйте сейчас❤️ Попробовать #реклама 18+ music.yandex.ru О рекламодателе Реклама на Яндексе

Погрузиться в сферу Data Science и освоить профессию инженера данных поможет одногодичная онлайн-программа магистратуры специ
Погрузиться в сферу Data Science и освоить профессию инженера данных поможет одногодичная онлайн-программа магистратуры специализированного высшего образования «Инженерия данных» НИТУ МИСИС. Преимущества программы: ✔️ полное погружение в Data Science с помощью онлайн-занятий ✔️практическое обучение от экспертов индустрии и ведущих преподавателей МИСИС ✔️освоите разработку архитектурных IT-решений по подготовке и трансформации данных для решения задач любого бизнеса ✔️ на старте обучения сможете выбрать свой трек специализации: «Python-разработчик», «Инженерия данных» или «Машинное обучение» ✔️ диплом одного из ведущих технических вузов России Готов изменить будущее? Начни готовиться к сдаче вступительного испытания уже сейчас с помощью подготовительного онлайн-курса. Переходи по ссылке и пройди простую регистрацию. Подробная информация о программе на нашем сайте. Подписывайся на Телеграм-канал "Онлайн-обучение | МИСИС", чтобы быть в курсе новостей.

Создание новой переменной в Python фактически означает создание нового имени для уже существующего объекта. Именно поэтому этот процесс называется связыванием имени (name binding). Существует множество способов связать имя с объектом. Вот примеры того, как можно связать x:

x = y         # Присваивание
import x      # Импорт модуля
class x: pass # Определение класса
def x(): pass # Определение функции
def y(x): pass # Определение аргумента функции
for x in y: pass # Перебор элементов в цикле
with y as x: pass # Использование в конструкции with
except y as x: pass # Обработка исключения
Также можно привязать имя к объекту, манипулируя глобальным пространством имен:

In : x
NameError: name 'x' is not defined  # Ошибка: переменная x не определена

In : globals()['x'] = 42  # Присваивание через globals()
In : x
Out: 42  # Теперь x привязан к 42
Однако нельзя сделать то же самое с locals(), так как изменения словаря locals() игнорируются. 👉@BookPython

Чтобы отсортировать последовательность в Python, используйте sorted:

In : sorted([1, -1, 2, -3, 3])
Out: [-3, -1, 1, 2, 3]
С помощью аргумента key можно передать функцию, которая будет использоваться для получения ключа сравнения для каждого значения. Например, отсортируем ту же последовательность по абсолютным значениям:

In : sorted([1, -1, 2, -3, 3], key=abs)
Out: [1, -1, 2, -3, 3]
Допустим, нам также нужно, чтобы числа с одинаковым абсолютным значением были расположены в порядке возрастания. В этом случае можно передать кортеж в качестве ключа сравнения:

In : sorted([1, -1, 2, -3, 3], key=lambda x: (abs(x), x))
Out: [-1, 1, 2, -3, 3]
Это не магия сортировки, а стандартное поведение кортежей в Python:

In : (1, 2) == (1, 2)
Out: True

In : (1, 2) > (1, 1)
Out: True

In : (1, 2) < (2, 1)
Out: True
👉@BookPython

Платежи через Robokassa за 0₽. Автоматические чеки Бесплатное подключение. Один договор на всё. Готовая интеграция с сайтом,
Платежи через Robokassa за 0₽. Автоматические чеки Бесплатное подключение. Один договор на всё. Готовая интеграция с сайтом, VK, TG Перейти на сайт Финансовые услуги оказывает: ПАО "Промсвязьбанк", АО НКО "Платежи и расчет". #реклама robokassa.com О рекламодателе

«Reduce» — это функция высшего порядка, которая рекурсивно обрабатывает итерируемый объект, применяя некоторую операцию к следующему элементу и уже вычисленному значению. Также вы можете знать её под названиями «fold», «inject», «accumulate» или другими. Использование reduce с result = result + element даёт сумму всех элементов, result = min(result, element) возвращает минимум, а result = element позволяет получить последний элемент последовательности. В Python функция reduce доступна (начиная с Python 3, она была перемещена в functools.reduce):

from functools import reduce

print(reduce(lambda s, i: s + i, range(10)))  # 45
print(reduce(lambda s, i: min(s, i), range(10)))  # 0
print(reduce(lambda s, i: i, range(10)))  # 9
Также, если вам нужны простые лямбда-функции, такие как lambda a, b: a + b, в Python есть модуль operator, который упрощает их использование:

from operator import add
print(reduce(add, range(10)))  # 45
👉@BookPython

Вебинар по защите веб-приложений. UserGate WAF Приглашаем вас на вебинар, где узнаете, какие задачи решает и как защищает веб
Вебинар по защите веб-приложений. UserGate WAF Приглашаем вас на вебинар, где узнаете, какие задачи решает и как защищает веб-приложения от современных угроз — UserGate WAF. ✅На вебинаре вы узнаете: - Какие задачи решает UserGate WAF. - Как использование продукта поможет защитить ваши веб-приложения от современных угроз. - О подходах к разработке продукта и формировании экспертизы в этой области. ⚡Регистрация на вебинар уже открыта. Зарегистрироваться #реклама 16+ webinar.usergate.com О рекламодателе

CPython поддерживает два уровня оптимизации. Вы можете включить их с помощью флагов -O и -OO. - Флаг -O устанавливает __debug__ в значение False и удаляет все операторы assert из программы. - Флаг -OO делает то же самое, а также удаляет строки документации (docstrings). Обычная версия скрипта кэшируется в файл .pyc, а оптимизированная версия раньше кэшировалась в файл .pyo. Однако, начиная с Python 3.5, файлы .pyo больше не используются. Вместо них, в соответствии с PEP 488, вводятся файлы .opt-1.pyc и .opt-2.pyc. 👉@BookPython

Хотите быстрее закончить ремонт? Покупка новой мебели для дома в одном месте сэкономит время и нервы. «Мария» предлагает кухн
+3
Хотите быстрее закончить ремонт? Покупка новой мебели для дома в одном месте сэкономит время и нервы. «Мария» предлагает кухни, шкафы, диваны и аксессуары для уютного интерьера. Подписывайтесь на их Telegram-канал для вдохновения и полезной информации: - Краштесты для выбора материалов. - Тренды интерьерной моды. - Лайфхаки для уюта и ухода за мебелью. - Бесплатный гайд по стилям. - Информация об акциях. Подпишитесь на Telegram-канал «Марии», чтобы вдохновляться и узнавать массу полезной информации. Подписаться #реклама О рекламодателе

Иногда вам может понадобиться проверить синтаксис Python-файла без его запуска. Такая простая проверка может быть полезна, например, в качестве хука перед коммитом или быстрой проверки в рамках непрерывной интеграции (CI). Прямого способа сделать это нет. Вы можете запустить файл с помощью команды python -m module.py, что предотвратит выполнение блока if __name__ == '__main__'. Однако все импорты всё равно будут выполнены, и это может привести к ошибкам, если вы хотите проверить синтаксис в среде, где модуль не может и не должен быть запущен. Тем не менее, стандартная библиотека Python содержит модуль py_compile, который генерирует байт-код из исходного файла Python без его выполнения. Это именно то, что нам нужно:

$ python -m py_compile test.c
  File "test.c", line 1
    int main() {
           ^
SyntaxError: invalid syntax
👉@BookPython

Подборка Telegram каналов для программистов Системное администрирование 📌 https://t.me/sysadmin_girl Девочка Сисадмин https://t.me/srv_admin_linux Админские угодья https://t.me/linux_srv Типичный Сисадмин https://t.me/linux_odmin Linux: Системный администратор https://t.me/devops_star DevOps Star (Звезда Девопса) https://t.me/i_linux Системный администратор https://t.me/linuxchmod Linux https://t.me/sys_adminos Системный Администратор https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало) https://t.me/sysadminof Книги для админов, полезные материалы https://t.me/i_odmin Все для системного администратора https://t.me/i_odmin_book Библиотека Системного Администратора https://t.me/i_odmin_chat Чат системных администраторов https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др. https://t.me/sysadminoff Новости Линукс Linux 1C разработка 📌 https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С Программирование C++📌 https://t.me/cpp_lib Библиотека C/C++ разработчика https://t.me/cpp_knigi Книги для программистов C/C++ https://t.me/cpp_geek Учим C/C++ на примерах Программирование Python 📌 https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍 https://t.me/BookPython Библиотека Python разработчика https://t.me/python_real Python подборки на русском и английском https://t.me/python_360 Книги по Python Rus Java разработка 📌 https://t.me/BookJava Библиотека Java разработчика https://t.me/java_360 Книги по Java Rus https://t.me/java_geek Учим Java на примерах GitHub Сообщество 📌 https://t.me/Githublib Интересное из GitHub Базы данных (Data Base) 📌 https://t.me/database_info Все про базы данных Мобильная разработка: iOS, Android 📌 https://t.me/developer_mobila Мобильная разработка https://t.me/kotlin_lib Подборки полезного материала по Kotlin Фронтенд разработка 📌 https://t.me/frontend_1 Подборки для frontend разработчиков https://t.me/frontend_sovet Frontend советы, примеры и практика! https://t.me/React_lib Подборки по React js и все что с ним связано Разработка игр 📌 https://t.me/game_devv Все о разработке игр Библиотеки 📌 https://t.me/book_for_dev Книги для программистов Rus https://t.me/programmist_of Книги по программированию https://t.me/proglb Библиотека программиста https://t.me/bfbook Книги для программистов https://t.me/books_reserv Книги для программистов БигДата, машинное обучение 📌 https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning Программирование 📌 https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций https://t.me/coddy_academy Полезные советы по программированию https://t.me/rust_lib Полезный контент по программированию на Rust https://t.me/golang_lib Библиотека Go (Golang) разработчика https://t.me/itmozg Программисты, дизайнеры, новости из мира IT https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 https://t.me/nodejs_lib Подборки по Node js и все что с ним связано https://t.me/ruby_lib Библиотека Ruby программиста QA, тестирование 📌 https://t.me/testlab_qa Библиотека тестировщика Шутки программистов 📌 https://t.me/itumor Шутки программистов Защита, взлом, безопасность 📌 https://t.me/thehaking Канал о кибербезопасности https://t.me/xakep_1 Статьи из "Хакера" Книги, статьи для дизайнеров 📌 https://t.me/ux_web Статьи, книги для дизайнеров Английский 📌 https://t.me/UchuEnglish Английский с нуля Математика 📌 https://t.me/Pomatematike Канал по математике https://t.me/phis_mat Обучающие видео, книги по Физике и Математике Excel лайфхак📌 https://t.me/Excel_lifehack https://t.me/tikon_1 Новости высоких технологий, науки и техники💡 https://t.me/mir_teh Мир технологий (Technology World) Вакансии 📌 https://t.me/sysadmin_rabota Системный Администратор https://t.me/progjob Вакансии в IT

Студия в Краснодаре за 18 203 р/мес. МКР Родные просторы Жилой комплекс "Родные Просторы" в Краснодаре - это масштабный проек
Студия в Краснодаре за 18 203 р/мес. МКР Родные просторы Жилой комплекс "Родные Просторы" в Краснодаре - это масштабный проект группы компаний ТОЧНО, который предлагает уникальные условия для комфортной жизни. "Родные просторы" - это не просто квартиры, это целый микрорайон, созданный с учетом потребностей современных семей. Здесь предусмотрены разнообразные планировки и высококачественная отделка, что позволяет каждому выбрать идеальное жильё. ✨Уникальное предложение этого месяца - студия за 18 203 рублей в месяц. Узнать больше Проектная декларация на сайте https://наш.дом.рф/. Застройщик: ООО СЗ ЮГСТРОЙИМПЕРИАЛ. Финансовые услуги оказывает: ПАО "Сбербанк", АО "АЛЬФА-БАНК" и др.. #реклама promo.tochno-rp.ru О рекламодателе

Иногда вам нужно очистить коллекцию в Python. Вы, вероятно, используете что-то вроде d = {} (для словарей), но на самом деле это не очистка, а создание новой коллекции и выбрасывание старой. Это может сработать для вас, но другие владельцы того же объекта всё ещё будут иметь ссылку на оригинальный. Правильный способ очистки словаря, множества, deque и других коллекций — вызвать x.clear(). 👉@BookPython

Ну не умею я красиво одеваться! Давай научу стильно одеваться, выбирай свой возраст: Мне 18-25 лет - t.me/+jVxNL8DmXWFlZDE6 М
Ну не умею я красиво одеваться! Давай научу стильно одеваться, выбирай свой возраст: Мне 18-25 лет - t.me/+jVxNL8DmXWFlZDE6 Мне 26-35 лет - t.me/+ROzrU94Ejnk2ODdi Мне 36-45 лет - t.me/+bXkTG-pz6Eo2Zjk6 Мне 46-55 лет - t.me/+zw5GucY-1J9mZmYy Мне 56-65 лет - t.me/+09swsvijeqBlYWEy Мне 70+ лет - t.me/+h8SET4pYzPJlMWIy Тут нет моего возраста - t.me/+IrzSnvKpkPNiNTBi Узнать больше #реклама О рекламодателе

В Python множества поддерживают операторы сравнения, где a < b означает, что a является подмножеством b:

>>> {1} < {1, 2}
True
>>> {1} < {2, 3}
False
Это означает, что множества частично упорядочены, то есть существуют такие a и b, что и a < b, и b < a — ложны:

>>> {1} < {2, 3}
False
>>> {1} > {2, 3}
False
Некоторые функции, такие как min, max и sorted, требуют полного порядка, поэтому их применение к списку множеств может дать неожиданные результаты:

>>> min([{1}, {2}])
{1}
>>> min([{2}, {1}])
{2}
👉@BookPython

Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск
Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск и Яндекс Книги тоже в подписке. Попробуйте сейчас❤️ Попробовать #реклама 18+ music.yandex.ru О рекламодателе Реклама на Яндексе

С версии Python 3.0 выбрасывание исключения внутри блока except автоматически добавляет перехваченное исключение в атрибут __context__ нового исключения. Это приводит к тому, что оба исключения отображаются в traceback:

try:
    1 / 0
except ZeroDivisionError:
    raise ValueError('Zero!')
Результат выполнения:

Traceback (most recent call last):
  File "test.py", line 2, in <module>
    1 / 0
ZeroDivisionError: division by zero

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "test.py", line 4, in <module>
    raise ValueError('Zero!')
ValueError: Zero!
Вы также можете добавить __cause__ к любому исключению с помощью выражения raise ... from:

division_error = None

try:
    1 / 0
except ZeroDivisionError as e:
    division_error = e

raise ValueError('Zero!') from division_error
Результат выполнения:
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    1 / 0
ZeroDivisionError: division by zero

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "test.py", line 8, in <module>
    raise ValueError('Zero!') from division_error
ValueError: Zero!
👉@BookPython

Прямой доступ к атрибутам объекта может быть не самой лучшей идеей. Если клиенты взаимодействуют с объектом через методы, вы всегда можете изменить способ обработки каждого запроса, в то время как при прямом доступе к атрибутам это может быть невозможно. Разные языки решают эту проблему по-разному. В Ruby синтаксически невозможно получить прямой доступ к атрибуту: obj.x — это вызов метода x. В Java рекомендуется делать все атрибуты приватными и писать тривиальные геттеры, например: public int getX() { return this.x; }. Python предлагает решение, которое в некотором роде похоже на то, что есть в Ruby. Вы можете определить свойство (`property`), чтобы obj.x вызывал метод вместо прямого возврата атрибута x.

class Example:
    def __init__(self, x):
        self._x = x

    @property
    def x(self):
        return self._x
👉@BookPython