#Собес
🤔 Что знаешь про ORM?
ORM (Object-Relational Mapping) - это метод, который позволяет работать с базами данных с помощью объектно-ориентированного подхода. Вместо написания SQL- запросов, разработчик работает с объектами, а ORM автоматически преобразует их в SQL-запросы для взаимодействия с базой данных.
👉 Новости 👉 Платформа
ORM (Object-Relational Mapping) - это метод, который позволяет работать с базами данных с помощью объектно-ориентированного подхода. Вместо написания SQL- запросов, разработчик работает с объектами, а ORM автоматически преобразует их в SQL-запросы для взаимодействия с базой данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 632. Smallest Range Covering Elements from K Lists
У вас есть k списков отсортированных целых чисел в неубывающем порядке. Найдите наименьший диапазон, в который входит хотя бы одно число из каждого из k списков. Мы определяем, что диапазон [a, b] меньше диапазона [c, d], если b - a < d - c или a < c, если b - a == d - c.
Пример:
👨💻 Алгоритм:
1⃣ Инициализация и сбор всех начальных элементов
Создайте массив для хранения текущих индексов каждого списка и используйте минимальную кучу для отслеживания текущих минимальных элементов из каждого списка.
2⃣ Нахождение минимального диапазона
Используйте кучу для извлечения минимального элемента и обновления текущего диапазона. Обновляйте максимальный элемент в текущем диапазоне при добавлении новых элементов.
3⃣ Проверка и обновление диапазона
Продолжайте обновлять кучу и диапазон, пока возможно. Завершите, когда один из списков исчерпан.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 632. Smallest Range Covering Elements from K Lists
У вас есть k списков отсортированных целых чисел в неубывающем порядке. Найдите наименьший диапазон, в который входит хотя бы одно число из каждого из k списков. Мы определяем, что диапазон [a, b] меньше диапазона [c, d], если b - a < d - c или a < c, если b - a == d - c.
Пример:
Input: nums = [[4,10,15,24,26],[0,9,12,20],[5,18,22,30]]
Output: [20,24]
Создайте массив для хранения текущих индексов каждого списка и используйте минимальную кучу для отслеживания текущих минимальных элементов из каждого списка.
Используйте кучу для извлечения минимального элемента и обновления текущего диапазона. Обновляйте максимальный элемент в текущем диапазоне при добавлении новых элементов.
Продолжайте обновлять кучу и диапазон, пока возможно. Завершите, когда один из списков исчерпан.
from heapq import heappop, heappush
def smallestRange(nums):
min_heap = []
max_value = float('-inf')
for i in range(len(nums)):
heappush(min_heap, (nums[i][0], i, 0))
max_value = max(max_value, nums[i][0])
range_start, range_end = float('-inf'), float('inf')
while len(min_heap) == len(nums):
min_value, row, col = heappop(min_heap)
if max_value - min_value < range_end - range_start:
range_start, range_end = min_value, max_value
if col + 1 < len(nums[row]):
heappush(min_heap, (nums[row][col + 1], row, col + 1))
max_value = max(max_value, nums[row][col + 1])
return [range_start, range_end]
Please open Telegram to view this post
VIEW IN TELEGRAM
DeeplParser-main.zip
6.7 KB
#полезное
🤓 Скрипт переводчик
Скрипт для перевода текста любого объема с помощью Deepl переводчика.
🤖 ЯП: Python 3.11+
📂 Модули: bs4, selenium
🖥 База данных: -
👉 Новости 👉 База вопросов
Скрипт для перевода текста любого объема с помощью Deepl переводчика.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Какие основные НТТР методы знаешь?
Основные НТТР-методы включают:
GET - запрос на получение ресурса.
POST - запрос на создание нового ресурса.
PUT - запрос на обновление ресурса.
DELETE - запрос на удаление ресурса.
РАТСН - запрос на частичное обновление ресурса.
👉 Новости 👉 Платформа
Основные НТТР-методы включают:
GET - запрос на получение ресурса.
POST - запрос на создание нового ресурса.
PUT - запрос на обновление ресурса.
DELETE - запрос на удаление ресурса.
РАТСН - запрос на частичное обновление ресурса.
Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
#полезное
😊 5 удивительных трюков для Python
1⃣ QR-код с помощью Python
2⃣ Конвертация изображений в PDF
3⃣ Скачивание видео с YouTube
4⃣ Отправка Email с помощью Python
5⃣ Определение языка
👉 Новости 👉 База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😐 Как парсить данные с Python?
Парсинг — это процесс извлечения нужной информации из текста, HTML-страниц, JSON, XML или других данных. Благодаря данной статье ты узнаешь, как правильно парсить данные с Python.
Читать статью
👉 Новости 👉 База вопросов
Парсинг — это процесс извлечения нужной информации из текста, HTML-страниц, JSON, XML или других данных. Благодаря данной статье ты узнаешь, как правильно парсить данные с Python.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что такое мультипроцессинг?
Мультипроцессинг - это способ выполнения нескольких процессов параллельно, каждый в своём отдельном адресном пространстве. Это полезно для задач, которые сильно зависят от процессора, таких как вычисления или обработки данных.
👉 Новости 👉 Платформа
Мультипроцессинг - это способ выполнения нескольких процессов параллельно, каждый в своём отдельном адресном пространстве. Это полезно для задач, которые сильно зависят от процессора, таких как вычисления или обработки данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#видео
🤓 Пишем доморощенный веб сервер на Python
Автор рассказывает о взаимодействии клиента (обычно браузера) и сервера через протокол HTTP, разбирает структуру HTTP-запросов и ответов, а затем пишет сервер, который умеет обрабатывать входящие запросы и отдавать HTML-файлы из указанной директории.
📱 Смотреть на ютубе
👉 Новости 👉 База вопросов
Автор рассказывает о взаимодействии клиента (обычно браузера) и сервера через протокол HTTP, разбирает структуру HTTP-запросов и ответов, а затем пишет сервер, который умеет обрабатывать входящие запросы и отдавать HTML-файлы из указанной директории.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🥺 Сделай Pandas/Seaborn быстрее в 100 раз!
FireDucks теперь также работает с сторонними библиотеками, такими как Seaborn.
Для начала: хотя Pandas — самая популярная библиотека для работы с DataFrame, она ужасно медленная.
🟠 Использует только одно ядро процессора.
🟠 Оперирует громоздкими DataFrame.
🟠 Исполняет код сразу, что мешает оптимизации.
FireDucks — это высоко оптимизированная замена Pandas с таким же API.
Он также бесшовно интегрируется со сторонними библиотеками, такими как Seaborn. И он действительно быстрый.
Как показано на изображении выше:
🟠 Создание тепловой карты корреляций на DataFrame Pandas занимает 4,36 секунды.
🟠 То же самое на FireDucks DataFrame выполняется более чем на 60% быстрее.
Технически Seaborn не распознает FireDucks DataFrame.
Однако благодаря механизму перехвата импорта (через
И при этом ускоряется весь процесс вычислений.
Ты можешь протестить здесь
👉 Новости 👉 База вопросов
FireDucks теперь также работает с сторонними библиотеками, такими как Seaborn.
Для начала: хотя Pandas — самая популярная библиотека для работы с DataFrame, она ужасно медленная.
FireDucks — это высоко оптимизированная замена Pandas с таким же API.
Он также бесшовно интегрируется со сторонними библиотеками, такими как Seaborn. И он действительно быстрый.
Как показано на изображении выше:
Технически Seaborn не распознает FireDucks DataFrame.
Однако благодаря механизму перехвата импорта (через
%load_ext fireducks.pandas
), FireDucks можно бесшовно интегрировать со сторонними библиотеками, такими как Seaborn, которые ожидают Pandas DataFrame.И при этом ускоряется весь процесс вычислений.
Ты можешь протестить здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😵💫 Это простые, но мощные приемы, которые помогают писать красивый и эффективный код в Python
🟠 Обмен значениями переменных без временной переменной
🟠
🟠 Объединение списка в строку с
🟠 Использование
🟠 Метод
🟠 Распаковка значений списка в несколько переменных
🟠 Использование
👉 Новости 👉 База вопросов
List comprehensions
для создания списков в одну строку .join()
вместо неэффективной конкатенации enumerate
вместо range(len())
для перебора списковget
у словарей, чтобы избежать ошибок при отсутствии ключа set
для удаления дубликатов из спискаPlease open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что такое GIL?
GIL (Global Interpreter Lock) - это механизм, который ограничивает выполнение нескольких потоков Python в один момент времени. Он гарантирует, что только один поток может исполнять байт-код Python, что делает многозадачность в Python с потоками неэффективной для вычислительно интенсивных задач.
👉 Новости 👉 Платформа
GIL (Global Interpreter Lock) - это механизм, который ограничивает выполнение нескольких потоков Python в один момент времени. Он гарантирует, что только один поток может исполнять байт-код Python, что делает многозадачность в Python с потоками неэффективной для вычислительно интенсивных задач.
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 560. Subarray Sum Equals K
Дан массив целых чисел nums и целое число k, вернуть общее количество подмассивов, сумма которых равна k.
Подмассив - это непрерывная непустая последовательность элементов внутри массива.
Пример:
👨💻 Алгоритм:
1⃣ Самый простой метод - рассмотреть каждый возможный подмассив данного массива nums.
2⃣ Найти сумму элементов каждого из этих подмассивов и проверить равенство полученной суммы с заданным k.
3⃣ Всякий раз, когда сумма равна k, увеличить счетчик, используемый для хранения необходимого результата.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 560. Subarray Sum Equals K
Дан массив целых чисел nums и целое число k, вернуть общее количество подмассивов, сумма которых равна k.
Подмассив - это непрерывная непустая последовательность элементов внутри массива.
Пример:
Input: nums = [1,1,1], k = 2
Output: 2
class Solution:
def subarraySum(self, nums: List[int], k: int) -> int:
count = 0
for start in range(len(nums)):
for end in range(start + 1, len(nums) + 1):
sum_ = sum(nums[start:end])
if sum_ == k:
count += 1
return count
Please open Telegram to view this post
VIEW IN TELEGRAM
Django-style.pdf
4.8 MB
#книги
Огромный туториал по Django и Django Rest Framework.
Внутри: модели, сервисы, API и сериализаторы, settings, ошибки и обработка исключений, Celery и много чего интересного.
👉 Новости 👉 База вопросов
Огромный туториал по Django и Django Rest Framework.
Внутри: модели, сервисы, API и сериализаторы, settings, ошибки и обработка исключений, Celery и много чего интересного.
Please open Telegram to view this post
VIEW IN TELEGRAM