Python Developer
21.5K subscribers
1.81K photos
135 videos
13 files
1.96K links
Авторский канал действующего Python-разработчика

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GA6KW

Реклама на бирже:
https://telega.in/c/python_tg
Download Telegram
🐍 Что такое GIL в Python?

В статье объясняется, что такое GIL (Global Interpreter Lock) в Python и как он влияет на выполнение кода.

Автор рассказывает, почему из-за GIL многопоточность в Python работает не так, как ожидается, и какие есть обходные пути.

Читать статью

tags: #статья

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥3👍1
TODO: add branches

Python Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
27😁10🔥6
Вопрос с собеседования

Зачем нужны break и continue?

Ответ: Они используются для управления последовательностью операций: break останавливает исполнение цикла и переводит исполнение на следующий блок кода, continue как бы перепрыгивает на следующую итерацию цикла и не прекращает его исполнение.

tags: #собеседование

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥113
This media is not supported in your browser
VIEW IN TELEGRAM
🌐 Задачи как на LeetCode, только для Linux и Kubernetes

Платформа с реальными DevOps-задачами — решаете кейсы по Linux, Docker и Kubernetes, получаете автоматическую проверку, подсказки и готовые разборы.

Можно практиковаться хоть каждый день — формат интерактивный и максимально приближен к рабочим ситуациям.

Забираем — тут.

tags: #полезное

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥2
Вопрос с собеседования

Как выполнить интерполяцию строк?

Ответ: Без импорта класса Template есть три способа интерполяции строк, которые представлены на фото.

tags: #собеседование

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101
🐍 Как сделать многопоточную программу?

В статье показано, как превратить простой таймер в многопоточную программу, способную выполнять несколько задач одновременно.

Автор объясняет, как использовать модуль threading, чтобы запускать напоминания параллельно и не блокировать выполнение остального кода.

Читать статью

tags: #статья

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
Не переводи стрелки, собака!

Python Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣51💯13😁8🔥1
Вопрос с собеседования

Что такое CORS и CSRF?

Ответ: CORS (Cross-Origin Resource Sharing) — это механизм безопасности браузера, который контролирует, какие внешние источники (домены) могут обращаться к ресурсам сайта. Он защищает пользователя от несанкционированных запросов со сторонних сайтов и реализуется через HTTP-заголовки, которые сервер явно разрешает или запрещает.

CSRF (Cross-Site Request Forgery) — это тип атаки, при которой злоумышленник заставляет браузер пользователя выполнить нежелательный запрос к сайту, на котором пользователь уже аутентифицирован. Защита от CSRF обычно реализуется с помощью CSRF-токенов, проверки заголовков и настройки cookie.


tags: #собеседование

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4🔥4
🐍 Чистый код на практике: принципы и примеры

В статье объясняется, как писать понятный и поддерживаемый код, чтобы избежать хаоса в проектах и не тратить время на постоянные доработки.

Разбираются причины, по которым код становится неудобным, и даются конкретные советы по его улучшению — от структуры и имен до архитектурных подходов.

Читать статью

tags:
#статья

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥1
Вопрос с собеседования

Какие существуют модели авторизации и в чём их отличия?

Ответ: Авторизация определяет, какие действия и ресурсы разрешены пользователю после аутентификации. Основные модели авторизации различаются тем, как принимается решение о доступе.

Ролевая модель (RBAC) основана на ролях. Пользователю назначаются роли, а каждая роль определяет набор разрешённых действий. Модель проста в реализации и широко используется, но плохо подходит для сложных и динамических правил доступа.

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

Атрибутная модель (ABAC) принимает решение о доступе на основе атрибутов пользователя, ресурса и контекста, например времени, местоположения или типа запроса. Это самая гибкая модель, но и самая сложная в реализации и сопровождении.

Итог: RBAC подходит для простых систем, permission-based — для более точного контроля, ABAC — для сложных бизнес-правил и динамических политик доступа.


tags: #собеседование

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥114👍3
🐍 Регулярные выражения

Регулярные выражения — это мощный инструмент для поиска и обработки текстовых данных с использованием шаблонов.

В статье объясняется, как применять регулярные выражения с помощью модуля re, рассматриваются основные функции, такие как match() и search(), и приводятся примеры их использования.

Читать статью

tags: #статья

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥31
Вопрос с собеседования

Как выполнить интерполяцию строк?

Ответ: Без импорта класса Template есть три способа интерполяции строк, которые представлены на фото.

tags: #собеседование

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
Вопрос с собеседования

Почему isinstance(True, int) возвращает True?

Ответ: В Python bool является подклассом int. True и False — это экземпляры int со значениями 1 и 0 соответственно.

tags: #собеседование

➡️ Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍101
🐍 Вебсокеты на FastAPI: реализация простого чата с комнатами за 20 минут

В статье подробно разбирается как создать групповой чат с использованием WebSocket на FastAPI.

Автор подробно объясняет, как реализовать серверную и клиентскую части, а также как развернуть проект на сервере.

Читать статью

tags: #статья

➡️ Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53
Вопрос с собеседования

Что такое процесс и поток, в чём между ними разница?

Ответ: Процесс — это независимая единица выполнения с собственной памятью и ресурсами. Поток (thread) — это подзадача внутри процесса, которая делит общую память с другими потоками.

В Python потоки ограничены GIL (Global Interpreter Lock) — только один поток может исполнять байткод одновременно. Поэтому для параллельных вычислений используют multiprocessing (создаёт отдельные процессы), а threading применяется в основном для задач, где потоки часто ждут — например, сетевые запросы или чтение файлов.


tags: #собеседование

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61
Вопрос с собеседования

Почему нельзя напрямую сравнивать два float в Python?

Ответ: Сравнение через == может вернуть False, даже если числа выглядят равными. Вместо этого нужно использовать math.isclose(a, b), которая сравнивает два числа с учётом допустимого отклонения (rel_tol и abs_tol) и гарантирует корректное сравнение.

tags: #собеседование

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍21😁1
🐍 Делаем тетрис на Python

В статье показано, как пошагово создать классический Тетрис с помощью библиотеки Pygame.

Автор разбирает логику игры, делится исходным кодом и объясняет, как всё устроено внутри.

Читать статью

tags: #статья

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍2
Вопрос с собеседования

Что произойдёт, если в try вызвать return, а в finally — тоже return?

Ответ: Если в блоке try выполняется return, но в блоке finally тоже есть return, то возвращаемое значение из try будет проигнорировано. Возврат из finally перезапишет его.

Это происходит потому, что finally всегда выполняется после try и catch, но перед фактическим возвратом значения. Если в finally есть свой return, он окончательно определяет результат метода.


tags: #собеседование

Python Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍151
🐍 Простые лайфхаки для автоматизации работы

В статье рассматриваются практичные методы автоматизации повседневных задач с помощью Python.

Автор предлагает полезные скрипты и инструменты, которые помогут как начинающим, так и опытным программистам сделать свою работу более эффективной.

Читать статью

tags: #статья

➡️ Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
4
Вопрос с собеседования

Что такое хэш-таблица и где она используется в Python?

Ответ: Хэш-таблица — это структура данных, которая хранит пары ключ–значение и обеспечивает быстрый доступ по ключу за время, близкое к O(1).

В Python встроенные структуры dict и set реализованы на основе хэш-таблиц:

▶️ Ключи хэшируются с помощью __hash__() и сравниваются через __eq__();

▶️ Хеш-код используется для вычисления индекса в массиве, куда помещается элемент;

▶️ Начиная с Python 3.6 (и гарантированно с 3.7), dict сохраняет порядок вставки ключей благодаря compact dict.

Важно: ключ должен быть хэшируемым — то есть обладать неизменяемым хешем и согласованной реализацией __hash__() и __eq__().


tags: #собеседование

Python Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21