Библиотека собеса по Python | вопросы с собеседований
6.01K subscribers
706 photos
15 videos
761 links
Вопросы с собеседований по Python и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/6587aafa

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Как получить IP-адрес посетителя в Flask?

Ответ: Чтобы получить IP-адрес посетителя во Flask, мы используем метод request.remote_addr. Ниже представлена его реализация.

from flask import Flask, request

app = Flask(__name__)

@app.route('/')
def get_visitor_ip():
visitor_ip = request.remote_addr
return f"Visitor's IP address is: {visitor_ip}"

if __name__ == '__main__':
app.run(debug=True)


Библиотека собеса по Python
Какое расширение используется для подключения к базе данных во Flask?

Расширение улучшает управление базами данных и взаимодействие с ними во время разработки, устраняя необходимость написания простых SQL-запросов. PostgreSQL, SQLite и MySQL — лишь некоторые из поддерживаемых Flask СУБД. Для подключения к базам данных требуется плагин Flask-SQLAlchemy.

Библиотека собеса по Python
Что такое Docstring?

Docstring (дословно «строка документации») — это строка, которая используется для документирования модулей, функций, классов и методов в вашем коде. Она представляет собой строковый литерал, который следует сразу после определения элемента кода и предназначен для объяснения, как работает этот элемент, какие аргументы он принимает, какие значения возвращает и другие важные детали.

Обычно docstring располагается в самом верхнем уровне определения элемента кода и заключается в тройные кавычки (одинарные или двойные).


Библиотека собеса по Python
Какой метод использовался до оператора in для проверки наличия ключа в словаре?

До появления оператора in в Python, чтобы проверить, содержит ли словарь определенный ключ, использовался метод словаря has_key().

Этот метод принимал в качестве аргумента проверяемый ключ и возвращал логическое значение - True, если ключ присутствовал в словаре, и False - если нет.

В Python 2.5 появился более понятный и краткий оператор in, поэтому сейчас рекомендуется использовать именно его, а has_key() считается устаревши
м.


Библиотека собеса по Python
👾1
Как изменить тип данных списка?

Для изменения типа данных в списке можно использовать встроенные функции:

1. map() — применяет указанную функцию к каждому элементу списка и возвращает новый список с измененными элементами:

old_list = [1, 2, 3]
new_list = map(str, old_list)

В новом списке все элементы будут строкового типа.

2. Использование генераторного выражения:

old_list = [1, 2, 3]
new_list = [str(x) for x in old_list]

Здесь мы преобразуем элементы в строку и помещаем в новый список.

Также можно применить конструкцию map к генераторному выражению:

new_list = list(map(str, [1, 2, 3]))

Библиотека собеса по Python
👍51
Разница между Django OneToOneField и ForeignKey Field?

Оба они являются наиболее распространенными типами полей, используемых в Django. Единственное различие между ними заключается в том, что поле ForeignKey состоит из параметра on_delete вместе с классом модели, поскольку оно используется для отношений «многие к одному», тогда как, с другой стороны, OneToOneField реализует только отношение «один к одному» и требует только класс модели.

Библиотека собеса по Python
Как используется конструкция try — except? Какие ещё блоки для обработки исключений существуют?

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

except: В этом блоке пишется код, который будет выполнен, если в блоке try возникнет исключение. Можно указать несколько блоков except.

else: Этот блок выполняется, если в блоке try не возникло исключений, то есть всё сработало без ошибок.

finally: Данный блок выполняется всегда после try, except и else, независимо от того, появилось исключение или нет (например, содержит инструкцию по закрытию файла).

Библиотека собеса по Python
❤‍🔥3👍2
Назовите примеры изменяемых и неизменяемых объектов.

Неизменяемые объекты нельзя изменить после создания, примеры — строки, кортежи, int, float. Противоположны им изменяемые объекты, например list, dict, set.

Библиотека собеса по Python
Как профилировать производительность в проде без сильного оверхеда?

Используйте сэмплирующие профилировщики без остановки процесса (py-spy, perf, eBPF) для CPU/wall-time и флеймграфов; для памяти — tracemalloc со снапшотами; для async — метрики event loop (slow callbacks) и трассинг (OpenTelemetry). Профилируйте под реальной нагрузкой, фиксируйте p95/p99, меняйте код точечно.

Библиотека собеса по Python
В чем смысл параметров _value, __value?

_value — одиночное подчеркивание в начале имени означает, что этот параметр не предназначен для использования outside функции. Это соглашение, а не ограничение языка.

__value — двойное подчеркивание означает, что это имя зарезервировано Python и используется для специальных целей, например init для конструктора класса. Такие параметры могут выполнять какие-то дополнительные действия.


Библиотека собеса по Python
❤‍🔥2
В продакшн Django-приложении пользователи жалуются на «N+1 проблему» при выборках связанных объектов. Как вы будете диагностировать и устранять её?

Проверю SQL-запросы через django-debug-toolbar или логирование ORM. Если вижу множественные запросы для связанных моделей — перепишу код с использованием select_related (для ForeignKey/OneToOne) или prefetch_related (для ManyToMany/Reverse FK). При необходимости — вынесу тяжёлые выборки в кастомные SQL-запросы или оптимизирую структуру модели.

Библиотека собеса по Python
🤖 Ваш ИИ-агент съедает бюджет на токены и падает при сбоях API?

Пора переходить на новый уровень. Открыли продажи курса по AgentOps — управлению ИИ-агентами в рабочих процессах.

Рынок требует инженеров, которые умеют:

• Контролировать метрики и качество ответов;
• Эффективно работать с RAG-архитектурой;
• Строить системы, готовые к реальным нагрузкам.

Обучение займет 6-12 недель под руководством практиков с опытом в AI и Data Science в крупных IT-компаниях, таких как Яндекс, Сбер, МТС, Huawei, Raft и др.

🎁 Можно подождать, пока про AgentOps начнут говорить все. Или зайти сейчас — НА 30% ДЕШЕВЛЕ!

Работа с AI начинается с систем.
Системы — с AgentOps.


🔥 Забрать скидку и изучить программу.
1
Почему NumPy предпочтительнее Matlab, Octave, Idl или Yorick?

NumPy — высокопроизводительная библиотека с открытым исходным кодом, которая обеспечивает сложные математические и научные вычислительные возможности. Она поддерживает следующее:

⚡️Мощные функции для выполнения сложных математических операций с многомерными матрицами и массивами. Операции с ndarrays NumPy примерно на 50% быстрее по сравнению с операциями с встроенными списками с использованием циклов. Эта эффективность очень полезна, когда массивы содержат миллионы элементов
⚡️Предоставляет синтаксис индексации для легкого доступа к частям данных в большом массиве
⚡️Предоставляет встроенные функции, которые помогают легко выполнять операции, связанные с линейной алгеброй и статистикой
⚡️Для выполнения сложных вычислений с использованием NumPy требуется всего несколько строк кода


Библиотека собеса по Python
💯1
🏃‍♀️ МЫ СОБРАЛИ ДЛЯ ВАС МЕГА-ГАЙД ПО ИИ-АГЕНТАМ (ЧИТАЙТЕ БЕСПЛАТНО ПРЯМО В ТГ)

Выкатили большую серию постов, которая ЛЕГКО ЗАМЕНИТ ПАРОЧКУ ПЛАТНЫХ КУРСОВ на рынке.

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

Часть 1. Введение, юзкейсы и реальность
Разбираемся с терминами, снимаем розовые очки и смотрим, где ИИ реально приносит бабки, а где только жжет нервы:

1. «Так что вообще считается AI-агентом?»
2. «Где тут бот, а где уже AI-агент?»
3. «Не надо пихать AI-агента в каждую задачу»
4. «Что уже можно спокойно делать через AI-агентов?»
5. «А что через AI-агентов пока лучше не трогать?»

Часть 2. Изнанка, ошибки и архитектура
Как всё это устроено под капотом, чтобы не слить бюджет и не наломать дров на старте:

6. «Можно ли просто сесть вечером и собрать себе AI-агента?»
7. «С чего вообще начать, если хочется попробовать AI-агентов»
8. «Почему AI-агент может внезапно начать творить дичь»
9. «Где AI-агенты реально экономят время, а где только добавляют возни»
10. «Почему они жрут столько денег?»

Часть 3. Хардкорная практика (Что делать руками)
Хватит теории. Открываем ноут, запускаем Cursor и делаем нормальные, отказоустойчивые системы:

11. «Почему одного промпта мало?»
12. «Почему AI-агенту мало просто “дать доступ к данным”»
13. «Если не следить за AI-агентом, он быстро начинает жить своей жизнью»
14. «Собрать демку легко. Но как же сделать нормально»
15. «Как сделать, чтобы это не развалилось через неделю?»

👍 Сохраняйте пост в избранное, чтобы не потерять.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31👏1😁1
Библиотека собеса по Python | вопросы с собеседований pinned «🏃‍♀️ МЫ СОБРАЛИ ДЛЯ ВАС МЕГА-ГАЙД ПО ИИ-АГЕНТАМ (ЧИТАЙТЕ БЕСПЛАТНО ПРЯМО В ТГ) Выкатили большую серию постов, которая ЛЕГКО ЗАМЕНИТ ПАРОЧКУ ПЛАТНЫХ КУРСОВ на рынке. В первой части постов навалили жесткой базы, чтобы вправить мозги на место. Во второй дали…»
Как вы реализуете сериализатор для модели с полями Many-to-Many и динамическими свойствами в Django REST Framework?

Для реализации настраиваемой сериализации в Django REST Framework требуется:

1. Создание сериализатора для модели: Используйте serializers.ModelSerializer и определите сериализаторы для всех связанных моделей с Many-to-Many отношениями.

2. Динамические поля: Добавьте SerializerMethodField для обработки свойств, которые требуют динамического вычисления, и определите соответствующий метод.

class BookSerializer(serializers.ModelSerializer):
authors = AuthorSerializer(many=True, read_only=True)
custom_field = serializers.SerializerMethodField()

class Meta:
model = Book
fields = ('title', 'authors', 'custom_field')

def get_custom_field(self, obj):
return custom_value_computation(obj)

3. Валидация: Добавьте методы валидации validate_ для проверки данных.

Этот подход обеспечивает гибкость и поддержание структуры кода при работе с сложными данными.

Библиотека собеса по Python
Какие HTTP-методы предоставляет Python Flask?

Для обработки HTTP-запросов Flask использует ряд декораторов. Протокол HTTP является основой интернет-передачи данных. Этот протокол определяет ряд методов получения информации с определённого URL-адреса.

Библиотека собеса по Python
🤔2👏1💯1
что такое DjangoRESTFramework и для чего используется?

Django REST Framework (DRF) - это популярный toolkit для создания REST API на Python с использованием фреймворка Django.

DRF широко используется для создания REST API среднего и крупного масштаба, которые нуждаются в гибкости, производительности и удобном интерфейсе для клиентов.

Среди основных преимуществ DRF:

- Поддерживает форматы з
запросов и ответов: JSON, YAML, Browsable API.
- Интегрируется с основными БД и позволяет быстро создавать сложные запросы.
- Автоматически генерирует интерактивную документацию для API в формате Swagger/OpenAPI.


Библиотека собеса по Python
🔥1💯1
Как просмотреть методы объекта?

Для того чтобы увидеть все методы и атрибуты, связанные с конкретным объектом в Python, можно воспользоваться функцией dir(). Эта функция принимает объект в качестве аргумента и возвращает список имен всех его атрибутов и методов.

Библиотека собеса по Python
1👍1😁1
Что делает метод ljust()?

Делает длину строки не меньшей width, по необходимости заполняя последние символы символом fillchar.

Библиотека собеса по Python
1🎉1😍1
Почему NumPy предпочтительнее Matlab, Octave, Idl или Yorick?

NumPy — это высокопроизводительная библиотека с открытым исходным кодом, которая обеспечивает сложные математические и научные вычислительные возможности. Она использует язык Python, который является высокоуровневым, простым в изучении языком программирования общего назначения. Она поддерживает следующее:

✍🏻 Мощные функции для выполнения сложных математических операций с многомерными матрицами и массивами. ✍🏻 Операции с ndarrays NumPy примерно на 50% быстрее по сравнению с операциями с собственными списками с использованием циклов. Эта эффективность очень полезна, когда массивы содержат миллионы элементов.
✍🏻 Предоставляет синтаксис индексации для легкого доступа к частям данных в большом массиве.
✍🏻 Предоставляет встроенные функции, которые помогают легко выполнять операции, связанные с линейной алгеброй и статистикой.
✍🏻 Для выполнения сложных вычислений с использованием NumPy требуется всего несколько строк кода.


Библиотека собеса по Python
🔥31🎉1