Python вопросы с собеседований
25.7K subscribers
583 photos
34 videos
17 files
465 links
Вопросы с собеседований по Python

@workakkk - админ

@machinelearning_interview - вопросы с собесдований по Ml

@pro_python_code - Python

@data_analysis_ml - анализ данных на Python

@itchannels_telegram - 🔥 главное в ит

РКН: clck.ru/3FmrFd
Download Telegram
🔥Свежий курс со Stepik: Linux: полный апгрейд твоих скиллов

Хочешь реально понимать, что происходит под капотом твоей системы, а не просто кликать по GUI?

Без глубокого знания базы ты не инженер - ты просто пользователь.

🔹 В курсе ты:

- Освоишь bash, grep, sed, awk - инструменты, которыми живут админы.
- Разберёшь права, процессы, сеть, файловую систему и научишься чинить всё, что падает.
- Настроишь SSH, firewall, systemd, crontab, демоны и автозапуск.
- Научишься анализировать логи, следить за нагрузкой, и не паниковать при 100% CPU.

💡 Формат: пошаговое объяснение базы и разбор важных практик по работе с Linux.

🎯 После курса ты: будешь чувствовать Linux как родную среду и забудешь, что такое “permission denied”.

🚀 Сейчас действуют скидка целых - 30%, не упусти реальный шанс прокачаться.

👉 Забирай место на курсе со скидкой
3🔥2👍1👎1
🐍 Хитрая задача с собеседования по Python

> Что выведет этот код и почему?


def extend_list(val, lst=[]):
lst.append(val)
return lst

list1 = extend_list(10)
list2 = extend_list(123, [])
list3 = extend_list('a')

print(list1, list2, list3)


Вопрос: Почему list1 и list3 одинаковы?

🔍 Разбор:

Аргументы по умолчанию в Python вычисляются один раз — в момент определения функции, а не при каждом вызове.

Поэтому lst=[] создаётся один раз и сохраняется между вызовами, если вы не передали свой список явно.

🧠 Что произойдет:

- extend_list(10) → использует общий список [], теперь он [10]

- extend_list(123, []) → создаёт новый список [123]

- extend_list('a') → снова использует общий список → [10, 'a']

👉 Результат:

[10, 'a'] [123] [10, 'a']

Как исправить:

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


def extend_list(val, lst=None):
if lst is None:
lst = []
lst.append(val)
return lst


Это классическая ловушка Python-интервью - mutable default arguments.

Проверяет, понимаешь ли ты, как работают значения по умолчанию и область памяти.
🔥121
📚 Знакомьтесь, хендбуки от Яндекс Образования


Бесплатные интерактивные учебники для студентов и начинающих специалистов по Python, C++ и машинному обучению. Теория, которая пригодится в решении реальных задач.

Погружайтесь в дисциплину с нуля или выбирайте отдельные темы, выполняйте задания и следите за прогрессом. Хенбуки помогут закрыть пробелы в знаниях, подготовиться к экзаменам или собеседованиям.

👉Учиться по хендбукам
👍5
🌟 Рисуем шахматную доску с помощью Matplot!

@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Python trick: группировка с помощью itertools.groupby

Иногда при работе с коллекциями в пайтон нужно быстро сгруппировать данные по ключу и при этом не писать громоздкий цикл с проверками. В таких случаях можно использовать модуль итэртулз и функцию группбай. Она позволяет превратить список в словарь с удобной структурой, где каждый ключ сразу содержит все связанные элементы. Это сильно экономит строки кода и делает его чище.



from itertools import groupby
from operator import itemgetter

data = [
{"category": "A", "value": 10},
{"category": "B", "value": 20},
{"category": "A", "value": 30},
{"category": "B", "value": 40},
]

сортировка обязательна перед groupby
data.sort(key=itemgetter("category"))

grouped = {
key: list(group) for key, group in groupby(data, key=itemgetter("category"))
}

print(grouped)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4