Python вопросы с собеседований
Вопросы с собеседований по Python @workakkk - админ @machinelearning_interview - вопросы с собесдований по Ml @pro_python_code - Python @data_analysis_ml - анализ данных на Python @itchannels_telegram - 🔥 главное в ит РКН: clck.ru/3FmrFd
نمایش بیشتر📈 تحلیل کانال تلگرام Python вопросы с собеседований
کانال Python вопросы с собеседований (@python_job_interview) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 24 973 مشترک است و جایگاه 5 489 را در دسته فناوری و برنامهها و رتبه 26 805 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 24 973 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 04 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -145 و در ۲۴ ساعت گذشته برابر -13 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 6.29% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 3.00% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 1 570 بازدید دریافت میکند. در اولین روز معمولاً 750 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 8 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند github, api, собеседование, git, docker تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Вопросы с собеседований по Python
@workakkk - админ
@machinelearning_interview - вопросы с собесдований по Ml
@pro_python_code - Python
@data_analysis_ml - анализ данных на Python
@itchannels_telegram - 🔥 главное в ит
РКН: clck.ru/3FmrFd”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 05 ژوئن, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
tracemalloc. Этот инструмент поможет тебе быстро отследить, где происходит выделение памяти, и выявить проблемные участки кода.
import tracemalloc
def memory_leak():
a = []
for i in range(10000):
a.append('leak' * 100)
tracemalloc.start()
memory_leak()
snapshot = tracemalloc.take_snapshot()
top_stats = snapshot.statistics('lineno')
print("[Top 10 memory allocations]")
for stat in top_stats[:10]:
print(stat)
from pathlib import Path
path = Path("app.log")
with path.open("r", encoding="utf-8", buffering=1024 * 1024) as f:
for line in f:
line = line.strip()
if not line or line.startswith("#"):
continue
if "ERROR" in line:
print(line)unittest в Python. Это позволит вам автоматически проверять функциональность и находить ошибки. Вот пример простого теста для функции сложения:
import unittest
def add(a, b):
return a + b
class TestAddFunction(unittest.TestCase):
def test_add_positive(self):
self.assertEqual(add(1, 2), 3)
def test_add_negative(self):
self.assertEqual(add(-1, 1), 0)
def test_add_zero(self):
self.assertEqual(add(0, 0), 0)
if __name__ == '__main__':
unittest.main()
import re
# Пример текста
text = "Контакт: example@example.com, телефон: +7-123-456-7890"
# Регулярные выражения для извлечения email и телефона
email_pattern = r'\b[\w.-]+?@\w+?\.\w{2,4}\b'
phone_pattern = r'\+?\d{1,2}[- ]?\d{3}[- ]?\d{3}[- ]?\d{4}'
# Найти все совпадения
emails = re.findall(email_pattern, text)
phones = re.findall(phone_pattern, text)
# Результат
print("Найденные email:", emails)
print("Найденные телефоны:", phones)
# Создание виртуального окружения
python3 -m venv venv
# Активация виртуального окружения
source venv/bin/activate
# Установка основных зависимостей
pip install django djangorestframework psycopg2
# Создание файла requirements.txt
pip freeze > requirements.txt
# Инициализация нового проекта Django
django-admin startproject myproject
# Переход в директорию проекта
cd myproject
# Запуск сервера для проверки
python manage.py runserver
установить зависимости
pip install transformers accelerate torch sentencepiece
# пример запуска DeepSeek из Python
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_name = "deepseek-ai/deepseek-coder-6.7b-base"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.float16,
device_map="auto" # если есть GPU — модель сама её использует
)
prompt = "Напиши на Python функцию, которая проверяет, простое ли число."
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=160,
temperature=0.4
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))packaging стал ощутимо быстрее — и это реально заметно в больших проектах
Свежий апдейт библиотеки packaging (библиотека, которую используют pip и многие инструменты для сравнения версий и работы с зависимостями) принёс заметное ускорение ключевых операций. Это важно, потому что такие функции вызываются тысячи раз при установке зависимостей, разрешении версий и т.д.
Главное, что ускорили:
• Быстрее парсинг и сравнение версий (`Version` и `SpecifierSet`).
• Некоторые операции (сравнения, фильтрации, хэши) стали в несколько раз быстрее.
• Оптимизации направлены на самые “узкие места”, которые чаще всего тормозят pip и другие инструменты.
Почему это важно для тебя:
• pip будет работать быстрее при установке больших стеков зависимостей.
• Инструменты сборки и CI/CD быстрее считают совместимость версий.
• Оптимизация сделана без потери корректности и без усложнения API.
В целом это пример, как базовая утилита в экосистеме Python может ускориться не из-за нового синтаксиса, а за счёт глубокого профилирования и целевых улучшений.
Подробнее о скорости и измерениях — в исходном разборе изменений.
https://iscinumpy.dev/post/packaging-faster/
Установка:
pip install pyautogui
import pyautogui
import time
# Безопасность: переместите мышь в верхний левый угол, чтобы аварийно остановить
pyautogui.FAILSAFE = True
# Пауза перед стартом (5 секунд, чтобы открыть нужное окно)
print("Старт через 5 секунд...")
time.sleep(5)
# Координаты для клика (узнать можно через pyautogui.position())
x, y = 800, 500
# Количество кликов
clicks = 100
# Интервал между кликами (в секундах)
interval = 0.5
for i in range(clicks):
pyautogui.click(x, y)
print(f"Клик {i+1}")
time.sleep(interval)
print("Готово!")
⚡️Max
# Этот код выполняется СНАРУЖИ и запускает инжект внутрь процесса
import sys
target_pid = 12345 # PID запущенного Python процесса
payload = r"""
import os
import time
print("✅ Injected into running process!")
print("PID:", os.getpid())
print("Time:", time.time())
# Пример: читаем что есть в глобальном пространстве
g = globals()
print("Globals keys sample:", list(g.keys())[:10])
# Пример: создаём переменную прямо в процессе
INJECTED_FLAG = True
"""
# Новое API Python 3.14
sys.remote_exec(target_pid, payload)
Пример 2: инжектим debugpy (дебаг без рестарта)
Самая хайповая штука - можно подключить debugpy в уже живое приложение.
То есть приложение уже крутится, у него есть состояние, и ты просто включаешь “прослушку” дебаггера на порту.
import sys
target_pid = 12345 # PID работающего uvicorn / fastapi процесса
payload = r"""
import debugpy
HOST = "0.0.0.0"
PORT = 5679
debugpy.listen((HOST, PORT))
print(f"🐞 debugpy is listening on {HOST}:{PORT}")
# если хочешь остановить выполнение и ждать пока подключишь IDE:
# debugpy.wait_for_client()
# print("✅ debugger attached!")
"""
sys.remote_exec(target_pid, payload)
Дальше:
- ты делаешь port-forward (если Docker/K8s)
- подключаешь VS Code / PyCharm / nvim к localhost:5679
- ставишь breakpoints и дебажишь как обычно
Что важно
1) Это не “удалённое выполнение” как ssh.
Это прям “внутри процесса” - доступ к памяти, переменным, импортам.
2) Это опасно для продакшена.
Требует прав уровня SYS_PTRACE (можно читать/менять процессы) - поэтому только для локалки/стендов.
3) Это может стать стандартом для отладки контейнеров:
- баг воспроизводится только в k8s
- рестарт = баг пропал
- а тут просто подключился и посмотрел
https://www.youtube.com/watch?v=bYPFktmui4c
import numpy as np
def softmax(x: np.ndarray) -> np.ndarray:
x = x - np.max(x) # стабилизация
e = np.exp(x)
return e / np.sum(e)
# Допустим, у нас 3 токена в контексте.
# Для простоты возьмём маленькую размерность векторов (d=2).
# Query - "что я ищу"
# Key - "что я такое"
# Value - "какую инфу несу"
Q = np.array([1.0, 0.5]) # Query для текущего токена (например, слово "он")
K = np.array([
[1.0, 0.0], # Key токена 1 (например, "ключи")
[0.9, 0.1], # Key токена 2 (например, "стол")
[0.0, 1.0], # Key токена 3 (например, "рядом")
])
V = np.array([
[10.0, 0.0], # Value токена 1
[0.0, 10.0], # Value токена 2
[5.0, 5.0], # Value токена 3
])
# 1) Считаем "похожесть" Q на каждый K через скалярное произведение
scores = K @ Q # shape: (3,)
print("scores:", scores)
# 2) Нормализуем оценки -> получаем веса внимания
weights = softmax(scores)
print("attention weights:", weights)
# 3) Итоговый вектор = взвешенная сумма Value
output = weights @ V # shape: (2,)
print("output (context mixed):", output)
# Интерпретация:
# Если вес токена 2 ("стол") самый большой, значит модель "смотрит" на него сильнее всего.read, write, edit, glob, grep, bash
- Ведение истории беседы
- Цветной вывод в терминале
📌 GitHub: https://github.com/1rgs/nanocode
#pythonimport pdb
def calculate_factorial(n):
if n < 0:
raise ValueError("Negative values are not allowed")
elif n == 0:
return 1
else:
return n * calculate_factorial(n - 1)
def main():
num = 5
pdb.set_trace() # Запускаем отладчик здесь
result = calculate_factorial(num)
print(f"Factorial of {num} is {result}")
if __name__ == "__main__":
main()
t.me/ai_machinelearning_big_data - наш телеграм канал с уроками
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
