Тех собес на middle-senior Python Developer в ****

Доступно с премиум-подпиской

Оформите премиум-подписку, чтобы получить доступ к:

  • Фильтрации по компаниям
  • Названиям компаний в интервью
  • Видеозаписям собеседований в категории Python Developer

Посмотреть видео в категории

(2025-06-10)

— Задача 1:
Нужно написать функцию, которая переворачивает строку. Входная строка задается, как массив символов s. Нужно перевернуть входной массив на месте без дополнительной памяти

Example 1:

   Input: s = ["h","e","l","l","o"]
   Output: ["o","l","l","e","h"]
   
Example 2:

   Input: s = ["H","a","n","n","a","h"]
   Output: ["h","a","n","n","a","H"]

Задача 2:
Написать декоратор, который выводит время выполнения функции

— Задача 3:
Реализовать класс Singleton

— Задача 4:
Написать класс RedisLock — контекстный менеджер, который будет блокировать доступ другим обращениям при обращении в Redis по ключу

def redis_get(key: str): pass
def redis_set(key: str, value: Any, expire: float): pass
def redis_delete(key: str): pass

class RedisLock:
   pass

def updateuser(userid: int):
   key = f"user{userid}"
   with RedisLock(key=key):
       pass

Задача 5:
Что не так в коде?

import asyncio
import aiohttp

async def download_file(url: str, filename: str) -> None:
   session = aiohttp.ClientSession()
   resp = await session.get(url)
   body = await resp.read()
   
   with open(filename, "wb") as f:
       f.write(body)

-Задача 6:

Пусть есть таблица товаров и их производителей.

Таблица "Продукты"
+---------------+--------+
| Column Name   | Type   |
+---------------+--------+
| id            | int    | id-уникальный ключ для таблицы продуктов
| name          | varchar | наименование продукта
| company       | varchar | ссылка на компанию
| product_count | int    | количество продукта
| price         | int    | цена продукта
| is_discounted | int    | есть скидка на продукт
+---------------+--------+

1. Надо сгруппировать товары по производителям с ценой выше 30000 рублей.
2. Надо сгруппировать по производителям и найти все группы, для которых определено более 1 модели и общая стоимость товаров превышает 80000