Когда действительно нужны итераторы в python
И первое с чего нужно начать — итераторы нужны не ради экономия памяти, а они нужны ради контроля над чтением данных
Самый простой пример:
Такой объект читает данные по одному элементу и запоминает позицию
Т.е. состояние хранится внутри и повторно пройтись по данным нельзя
Итератор — это одноразовый поток
В целом можно сделать и через генератор:
Но так стоит делать в следующих ситуациях:
- нет необходимости возвращаться назад
- нет внешних эффектов
- не нужно управление процессом чтения
Но как только появится задача вроде "продолжить с места последнего падения" или "повторить последний шаг" — с генератором может быть больше проблем, чем пользы
Как можно сохранить позицию, например:
Так работают пакетные обработки, конвейеры данных и повторные запуски после ошибок
А асинхронный вариант может выглядеть так:
Если подытожить:
Генератор — удобный синтаксис
Итератор — инструмент управления
Если контроль над данными и позициями не нужен — не усложняйте код, можете просто использовать генератор
⭐️ Пост Guru Python:
Сергей Филичкин
И первое с чего нужно начать — итераторы нужны не ради экономия памяти, а они нужны ради контроля над чтением данных
Самый простой пример:
class DataStream:
def __init__(self, source):
self.source = source
self.pos = 0
def __iter__(self):
return self
def __next__(self):
if self.pos >= len(self.source):
raise StopIteration
value = self.source[self.pos]
self.pos += 1
return value
Такой объект читает данные по одному элементу и запоминает позицию
Т.е. состояние хранится внутри и повторно пройтись по данным нельзя
stream = DataStream([1, 2, 3])
list(stream) # [1, 2, 3]
list(stream) # []
По сути если объект можно читать сколько угодно раз — это скорее коллекция
А если можно прочитать только один раз — это поток
Итератор — это одноразовый поток
В целом можно сделать и через генератор:
def stream(data):
for x in data:
yield x
Но так стоит делать в следующих ситуациях:
- нет необходимости возвращаться назад
- нет внешних эффектов
- не нужно управление процессом чтения
Но как только появится задача вроде "продолжить с места последнего падения" или "повторить последний шаг" — с генератором может быть больше проблем, чем пользы
Как можно сохранить позицию, например:
class CheckpointStream(DataStream):
def checkpoint(self):
return self.pos
def restore(self, pos):
self.pos = pos
stream = CheckpointStream([100, 200, 300])
print(next(stream)) # 100
saved = stream.checkpoint()
print(next(stream)) # 200
stream.restore(saved)
print(next(stream)) # снова 200
Так работают пакетные обработки, конвейеры данных и повторные запуски после ошибок
А асинхронный вариант может выглядеть так:
class AsyncStream:
def __aiter__(self):
return self
async def __anext__(self):
...
# Дальше обычный цикл:
async for item in stream:
...
Если подытожить:
Генератор — удобный синтаксис
Итератор — инструмент управления
Если контроль над данными и позициями не нужен — не усложняйте код, можете просто использовать генератор
Сергей Филичкин
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥1
#Собес #hash #idempotency #index
🤔 Middle+ Python Backend-разработчик в компанию GoSolve
Техническое собеседование в USA компанию. Вилка 6500$.
💬 Вопросы:
- Что такое FastAPI и какие у него ключевые особенности?
- Что произойдёт, если перед корутиной не использовать await?
- В чём заключаются ключевые различия между FastAPI и Django, и в каких случаях предпочтительно использовать каждый из этих фреймворков?
- Как интегрировать сторонние API и какие подходы позволяют корректно обрабатывать входящие webhook-события?
- Как следует действовать, если во входящем событии отсутствует идентификатор, но необходимо обеспечить идемпотентную обработку без повторного выполнения действий?
👉 Все вопросы из этого собеседования (12)
📣 Хочешь больше собесов?
Подпишись на наш главный канал
🤔 Middle+ Python Backend-разработчик в компанию GoSolve
Техническое собеседование в USA компанию. Вилка 6500$.
💬 Вопросы:
- Что такое FastAPI и какие у него ключевые особенности?
- Что произойдёт, если перед корутиной не использовать await?
- В чём заключаются ключевые различия между FastAPI и Django, и в каких случаях предпочтительно использовать каждый из этих фреймворков?
- Как интегрировать сторонние API и какие подходы позволяют корректно обрабатывать входящие webhook-события?
- Как следует действовать, если во входящем событии отсутствует идентификатор, но необходимо обеспечить идемпотентную обработку без повторного выполнения действий?
👉 Все вопросы из этого собеседования (12)
📣 Хочешь больше собесов?
Подпишись на наш главный канал
🔥2
#Собес #seq_scan #index #b-tree
🤔 Если в запросе Seq Scan по полю с датой, что это значит? Какой индекс накинуть на дату и почему? (B-tree vs Hash).
💬 Кратко:
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Если в запросе Seq Scan по полю с датой, что это значит? Какой индекс накинуть на дату и почему? (B-tree vs Hash).
💬 Кратко:
Seq Scan (sequential scan) means что база данных читает всю таблицу для выполнения запроса, что медленно для больших таблиц. Для поля с датой следует создать B-tree индекс, потому что B-tree поддерживает range queries (например, поиск по периоду), while Hash индекс only supports equality checks.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
👍2
#tool #профиль
📚 Awesome GitHub Profile: ваш профессиональный бренд в цифровом мире
Это уникальный инструмент для персонализации вашего GitHub-профиля, который поможет вам создать впечатляющее портфолио и выделиться среди других разработчиков.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Awesome GitHub Profile: ваш профессиональный бренд в цифровом мире
Это уникальный инструмент для персонализации вашего GitHub-профиля, который поможет вам создать впечатляющее портфолио и выделиться среди других разработчиков.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #typing #static_analysis #mypy
🤔 Плюсы и минусы типизации в Python
💬 Кратко:
Типизация помогает избежать ошибок и улучшает автодополнение. Однако Python остаётся динамическим языком, и типы не проверяются во время исполнения. Главный плюс — читаемость и поддержка. Минус — добавление "шума" и необходимость использования внешних инструментов (например,
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Плюсы и минусы типизации в Python
💬 Кратко:
Типизация помогает избежать ошибок и улучшает автодополнение. Однако Python остаётся динамическим языком, и типы не проверяются во время исполнения. Главный плюс — читаемость и поддержка. Минус — добавление "шума" и необходимость использования внешних инструментов (например,
mypy).📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #python #dict #solid
🤔 Middle Python (Fast API) Backend разработчик в компанию НПФ Будущее
Техническое собеседование. Весна 2025.
💬 Вопросы:
- Какие есть типы данных в Python?
- Что такое абстрактные классы?
- Как реализовать транзакции через SQL-запросы?
- Для нагрузочного тестирования нужно добавить 10,000 клиентов в базу данных. Как бы вы это сделали?
- Использовали ли Redis для Celery?
👉 Все вопросы из этого собеседования (16)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Middle Python (Fast API) Backend разработчик в компанию НПФ Будущее
Техническое собеседование. Весна 2025.
💬 Вопросы:
- Какие есть типы данных в Python?
- Что такое абстрактные классы?
- Как реализовать транзакции через SQL-запросы?
- Для нагрузочного тестирования нужно добавить 10,000 клиентов в базу данных. Как бы вы это сделали?
- Использовали ли Redis для Celery?
👉 Все вопросы из этого собеседования (16)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1
#Собес #sql #postgres #database
🤔 Что такое транзакция в базе данных? + ACID
💬 Кратко:
Транзакция — это набор операций, выполняемых как единое целое. Гарантирует ACID (атомарность, согласованность, изоляция, долговечность).
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое транзакция в базе данных? + ACID
💬 Кратко:
Транзакция — это набор операций, выполняемых как единое целое. Гарантирует ACID (атомарность, согласованность, изоляция, долговечность).
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#repository #собес
📚 Interactive Coding Challenges от Donne Martin
Более 120 интерактивных задач по кодированию Python (алгоритмы и структуры данных) — поставляется с картами программы для запоминания Anki.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Interactive Coding Challenges от Donne Martin
Более 120 интерактивных задач по кодированию Python (алгоритмы и структуры данных) — поставляется с картами программы для запоминания Anki.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Forwarded from YeaHub
👨🏻💻 Сервис лайвкодинга в YeaHub
Фактически — релиз уже состоялся.
Но честно: мы не успели загрузить ту огромную базу задач, которую планировали, и ещё не всё успели полноценно протестировать.
Поэтому до 23 февраля работаем в режиме «вместе доделываем продукт»:
— мы активно добавляем задачи и чиним баги, все
— пока тестируем, все задачи открыты, после этого примерно 50% закроем для членов
— вы решаете, находите проблемы, пишете в поддержку и даёте фидбек
— ну и оформляете подписку 😜
Что уже есть:
• база реальных задач с собеседований
• JavaScript / Python / Java / Go
• удобный редактор и проверка решений
Что скоро:
• связь задач с компаниями и коллекциями собеседований (не успели в этот релиз)
• другие языки
• контесты
• обучающие модули и курс по алгоритмам
• AI-разбор решений построчно
• челленджи и соревнования
👉 Задачи: https://yeahub.ru/dashboard/tasks
👉 Членство: https://yeahub.ru/dashboard/settings#select-tariff
Новогодние цены действуют только до полноценного запуска. После — x2.
Сейчас лучший момент подключиться и поддержать проект.
Спасибо, что помогаете нам запустить это правильно✊🏻🚀 💪
Фактически — релиз уже состоялся.
Но честно: мы не успели загрузить ту огромную базу задач, которую планировали, и ещё не всё успели полноценно протестировать.
Поэтому до 23 февраля работаем в режиме «вместе доделываем продукт»:
— мы активно добавляем задачи и чиним баги, все
— пока тестируем, все задачи открыты, после этого примерно 50% закроем для членов
— вы решаете, находите проблемы, пишете в поддержку и даёте фидбек
— ну и оформляете подписку 😜
Что уже есть:
• база реальных задач с собеседований
• JavaScript / Python / Java / Go
• удобный редактор и проверка решений
Что скоро:
• связь задач с компаниями и коллекциями собеседований (не успели в этот релиз)
• другие языки
• контесты
• обучающие модули и курс по алгоритмам
• AI-разбор решений построчно
• челленджи и соревнования
👉 Задачи: https://yeahub.ru/dashboard/tasks
👉 Членство: https://yeahub.ru/dashboard/settings#select-tariff
Новогодние цены действуют только до полноценного запуска. После — x2.
Сейчас лучший момент подключиться и поддержать проект.
Спасибо, что помогаете нам запустить это правильно✊🏻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👎2🔥1🤡1🥱1🤝1
#Собес #async #asyncio #aiohttp
🤔 Как организовать асинхронные запросы к нескольким внешним сервисам? (asyncio, обработка ошибок)
💬 Кратко:
Асинхронные запросы можно организовать с помощью библиотеки
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как организовать асинхронные запросы к нескольким внешним сервисам? (asyncio, обработка ошибок)
💬 Кратко:
Асинхронные запросы можно организовать с помощью библиотеки
aiohttp и модуля asyncio. Запросы выполняются параллельно, что ускоряет работу. Ошибки обрабатываются через try-except или asyncio.gather с параметром return_exceptions=True.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Если ты хочешь получить оффер, то тебе нужно понять, на что стоит тратить свои силы при подготовке к трудоустройству
Когда ты смотришь вакансии, начинает казаться, что ты должен выучить всё и сразу. Ты вроде уже пишешь какой-то функционал, решаешь задачки, чувствуешь прогресс, но при этом не понимаешь, стоит ли выучить ещё одну кучу технологий либо нужно уже остановиться на том, что есть. И вот эта каша в голове не дает тебе сделать первый шаг – откликнуться на вакансию и пройти собеседование
Попробуй сейчас проверить свои знания и готовность идти к собесам 👀
1. Убедись, что ты понимаешь, как твои инструменты работают внутри ("под капотом"). На уровне мидла важно как минимум разбираться в асинхронности, работе памяти и многопоточности
2. Если ты всё-таки выбираешь работать с более сложными технологиями, то проверь, что хорошо в них разбираешься. Да, нужно глубоко знать хотя бы один фреймворк, а об остальных стоит иметь какое-то представление (и желательно не совсем поверхностное)
3. А если ты уже на этапе составления резюме и собесов, проверь, как упаковал свой опыт (ведь собеседования буквально все больше начинают походить на продажу в магазине или даже на рынке 🫠). В резюме крайне желательно указать свои настоящие бизнес-кейсы (с описанием архитектурных решений, проблемами, с которыми столкнулся, и тем, как ты их решил)
Твоя основная задача вообще не в том, чтобы всё тупо вызубрить. Она заключается в том, чтобы реально разобраться в разработке и самое главное доказать работодателю, что ты понимаешь, что и зачем ты делаешь
⭐️ Пост Guru Python:
Сергей Филичкин
Когда ты смотришь вакансии, начинает казаться, что ты должен выучить всё и сразу. Ты вроде уже пишешь какой-то функционал, решаешь задачки, чувствуешь прогресс, но при этом не понимаешь, стоит ли выучить ещё одну кучу технологий либо нужно уже остановиться на том, что есть. И вот эта каша в голове не дает тебе сделать первый шаг – откликнуться на вакансию и пройти собеседование
Попробуй сейчас проверить свои знания и готовность идти к собесам 👀
1. Убедись, что ты понимаешь, как твои инструменты работают внутри ("под капотом"). На уровне мидла важно как минимум разбираться в асинхронности, работе памяти и многопоточности
2. Если ты всё-таки выбираешь работать с более сложными технологиями, то проверь, что хорошо в них разбираешься. Да, нужно глубоко знать хотя бы один фреймворк, а об остальных стоит иметь какое-то представление (и желательно не совсем поверхностное)
3. А если ты уже на этапе составления резюме и собесов, проверь, как упаковал свой опыт (ведь собеседования буквально все больше начинают походить на продажу в магазине или даже на рынке 🫠). В резюме крайне желательно указать свои настоящие бизнес-кейсы (с описанием архитектурных решений, проблемами, с которыми столкнулся, и тем, как ты их решил)
Твоя основная задача вообще не в том, чтобы всё тупо вызубрить. Она заключается в том, чтобы реально разобраться в разработке и самое главное доказать работодателю, что ты понимаешь, что и зачем ты делаешь
Сергей Филичкин
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥1
#Собес #bound #python #oop
🤔 Middle Python Backend разработчик в компанию Sunlight
Техническое собеседование. Лето 2025. Вилка: 250к +. Опыт в резюме: 3 года. Проект: Клиентский сервис.
💬 Вопросы:
- Расскажи о принципах ООП в контексте Python
- Что знаешь о наследовании в контексте Python?
- Что такое корутина в Python?
- Какие есть типы соединений (JOIN) в PostgreSQL?
- Что такое Redis и для чего он используется?
👉 Все вопросы из этого собеседования (34)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Middle Python Backend разработчик в компанию Sunlight
Техническое собеседование. Лето 2025. Вилка: 250к +. Опыт в резюме: 3 года. Проект: Клиентский сервис.
💬 Вопросы:
- Расскажи о принципах ООП в контексте Python
- Что знаешь о наследовании в контексте Python?
- Что такое корутина в Python?
- Какие есть типы соединений (JOIN) в PostgreSQL?
- Что такое Redis и для чего он используется?
👉 Все вопросы из этого собеседования (34)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #replication #high_availability #failover
🤔 Что такое PostgreSQL replication?
💬 Кратко:
Репликация в PostgreSQL — это процесс создания копий данных из основной базы данных на другие серверы. Это повышает отказоустойчивость, позволяет балансировать нагрузку и обеспечивает резервное копирование. Существует несколько типов репликации: синхронная и асинхронная.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое PostgreSQL replication?
💬 Кратко:
Репликация в PostgreSQL — это процесс создания копий данных из основной базы данных на другие серверы. Это повышает отказоустойчивость, позволяет балансировать нагрузку и обеспечивает резервное копирование. Существует несколько типов репликации: синхронная и асинхронная.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#trainer #tutorials #exercise
📚 W3schools
На сайте представлены интерактивные уроки и справочные материалы по HTML, CSS, JavaScript, SQL, Python и другим технологиям; есть онлайн‑редактор для практики, примеры кода с возможностью редактирования и тестирования, а также разделы с упражнениями и тестами для закрепления знаний.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 W3schools
На сайте представлены интерактивные уроки и справочные материалы по HTML, CSS, JavaScript, SQL, Python и другим технологиям; есть онлайн‑редактор для практики, примеры кода с возможностью редактирования и тестирования, а также разделы с упражнениями и тестами для закрепления знаний.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #context #manager
🤔 Какие методы должен реализовывать контекстный менеджер
💬 Кратко:
Контекстный менеджер в Python должен реализовывать два метода:
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Какие методы должен реализовывать контекстный менеджер
💬 Кратко:
Контекстный менеджер в Python должен реализовывать два метода:
__enter__ и __exit__. Метод __enter__ вызывается при входе в блок with. Метод __exit__ вызывается при выходе из него. Эти методы позволяют управлять ресурсами, например файлами или соединениями. Без них объект не может использоваться в with.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Мало кто знает, что наличие хард скилов не всегда обеспечивает карьерный рост(
Наверняка ты замечал, что, несмотря на опыт и владение современным стеком, ты постоянно сталкиваешься с одним и тем же потолком: в зарплате, сложности в решении задач и ощущении, что не растешь
3 ситуации, с которыми сталкивается большинство:
1. Делаешь на работе всё на автомате, а на собесе – тупишь
Решаешь задачи автоматически, уже не думая. При этом стоит попасть на техническое интервью, даже на вакансию middle+ – начинаешь объяснять простые вещи сложно, путаешься в теории, не можешь связно рассказывать
2. Выполняешь задачи уровня выше за прежние деньги
Берёшь на себя всё больше ответственности (по факту уже работаешь как middle+ - senior), но получаешь всё ту же оплату на которую приходил (или чуть выше). А заговорить об этом как-то неловко, вдруг откажут или вообще уволят 🫣🤦♂️
3. Хочешь уже найти новую работу, но постоянно сам себя обманываешь
Составляешь план, решаешь подучить технологии/теорию, а через неделю снова скатываешься в прокрастинацию и рутину
По факту все решается просто: тебе нужна система. Которая заставит тебя каждый день предпринимать хотя бы маленькие шаги на пути к твоей цели. Поэтому постарайся сосредоточиться не на изучении теории и изучении только в момент "озарения" (по сути когда пришла мотивация), а постарайся выстроить систему, которая будет двигать тебя к результату
На работе же ты тоже строишь "систему", чтобы она всегда работала (в идеале) и давала прогнозируемый результат. Так вот сделай систему для своей жизни
Пока ты не выстроишь такую, ты постоянно будешь попадать в те 3 ситуации, о которых писал выше
⭐️ Пост Guru Python:
Сергей Филичкин
Наверняка ты замечал, что, несмотря на опыт и владение современным стеком, ты постоянно сталкиваешься с одним и тем же потолком: в зарплате, сложности в решении задач и ощущении, что не растешь
3 ситуации, с которыми сталкивается большинство:
1. Делаешь на работе всё на автомате, а на собесе – тупишь
Решаешь задачи автоматически, уже не думая. При этом стоит попасть на техническое интервью, даже на вакансию middle+ – начинаешь объяснять простые вещи сложно, путаешься в теории, не можешь связно рассказывать
2. Выполняешь задачи уровня выше за прежние деньги
Берёшь на себя всё больше ответственности (по факту уже работаешь как middle+ - senior), но получаешь всё ту же оплату на которую приходил (или чуть выше). А заговорить об этом как-то неловко, вдруг откажут или вообще уволят 🫣🤦♂️
3. Хочешь уже найти новую работу, но постоянно сам себя обманываешь
Составляешь план, решаешь подучить технологии/теорию, а через неделю снова скатываешься в прокрастинацию и рутину
По факту все решается просто: тебе нужна система. Которая заставит тебя каждый день предпринимать хотя бы маленькие шаги на пути к твоей цели. Поэтому постарайся сосредоточиться не на изучении теории и изучении только в момент "озарения" (по сути когда пришла мотивация), а постарайся выстроить систему, которая будет двигать тебя к результату
На работе же ты тоже строишь "систему", чтобы она всегда работала (в идеале) и давала прогнозируемый результат. Так вот сделай систему для своей жизни
Пока ты не выстроишь такую, ты постоянно будешь попадать в те 3 ситуации, о которых писал выше
Сергей Филичкин
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #python #dict #solid
🤔 Middle Python (Fast API) Backend разработчик в компанию НПФ Будущее
Техническое собеседование. Весна 2025.
💬 Вопросы:
- Какие есть типы данных в Python?
- Что такое абстрактные классы?
- Как реализовать транзакции через SQL-запросы?
- Для нагрузочного тестирования нужно добавить 10,000 клиентов в базу данных. Как бы вы это сделали?
- Использовали ли Redis для Celery?
👉 Все вопросы из этого собеседования (16)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Middle Python (Fast API) Backend разработчик в компанию НПФ Будущее
Техническое собеседование. Весна 2025.
💬 Вопросы:
- Какие есть типы данных в Python?
- Что такое абстрактные классы?
- Как реализовать транзакции через SQL-запросы?
- Для нагрузочного тестирования нужно добавить 10,000 клиентов в базу данных. Как бы вы это сделали?
- Использовали ли Redis для Celery?
👉 Все вопросы из этого собеседования (16)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #sql #where
🤔 В каком порядке выполняется условие WHERE с оператором AND?
💬 Кратко:
Условия в
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 В каком порядке выполняется условие WHERE с оператором AND?
💬 Кратко:
Условия в
WHERE с оператором AND выполняются в произвольном порядке, так как SQL оптимизатор сам решает, в каком порядке их вычислять для эффективности. Однако логически AND вычисляется слева направо, но если условие ложно, дальнейшие проверки могут пропускаться (short-circuit evaluation). Важно помнить, что порядок не гарантирован, и не следует полагаться на него для side effects.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа