#полезное
👍
✅ Быстрая проверка на вхождение
✅ Работа с подмножествами и надмножествами
✅ Математика множеств: объединение, разность, пересечение
Настоящий скрытый джем для чистой логики.
👉 Новости 👉 База вопросов
set()
в Python — это не только способ убрать дубликаты.Настоящий скрытый джем для чистой логики.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🥄 Дружеское напоминание: у Python есть библиотека
Она позволяет добавлять меню, иконки и взаимодействие с пользователем, прямо из питоновского скрипта, без сложных GUI-фреймворков.
Работает на Windows, macOS и Linux, без внешних зависимостей.
С её помощью можно:
🔵 Создавать меню в трее
🔵 Обрабатывать клики
🔵 Показывать уведомления (через системные средства)
Установка:
Ссылка на документацию: pystray.readthedocs.io
👉 Новости 👉 База вопросов
pystray
для создания иконок в системном трееОна позволяет добавлять меню, иконки и взаимодействие с пользователем, прямо из питоновского скрипта, без сложных GUI-фреймворков.
Работает на Windows, macOS и Linux, без внешних зависимостей.
С её помощью можно:
Установка:
pip install pystray
Ссылка на документацию: pystray.readthedocs.io
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #networks
🤔 Что такое IP Spoofing?
IP Spoofing - это техника, при которой злоумышленник подменяет Свой IP-адрес, чтобы скрыть истинный источник трафика. Это используется для маскировки атак, таких как DDoS, или для обхода мер безопасности.
👉 Новости 👉 База вопросов
IP Spoofing - это техника, при которой злоумышленник подменяет Свой IP-адрес, чтобы скрыть истинный источник трафика. Это используется для маскировки атак, таких как DDoS, или для обхода мер безопасности.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😱 Знал ли ты, что Python может открыть вкладку браузера?
Без фреймворков. Всего одна строка.
Вот как запустить URL — удобно для создания утилит, повышения продуктивности или автоматического открытия документации из скриптов.
👉 Новости 👉 База вопросов
Без фреймворков. Всего одна строка.
Вот как запустить URL — удобно для создания утилит, повышения продуктивности или автоматического открытия документации из скриптов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#полезное
😎 Совет по Python:
Использование встроенных функций делает код короче и заставляет тебя выглядеть как гений.
Традиционный способ
Гениальный способ
👉 Новости 👉 База вопросов
Использование встроенных функций делает код короче и заставляет тебя выглядеть как гений.
Традиционный способ
def find_max(numbers):
max_num = numbers[0]
for num in numbers:
if num > max_num:
max_num = num
return max_num
numbers = [4, 2, 9, 7, 5, 6]
print(find_max(numbers))
# Вывод: 9
Гениальный способ
def find_max(numbers):
return max(numbers)
numbers = [4, 2, 9, 7, 5, 6]
print(find_max(numbers))
# Вывод: 9
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
#Собес #RabbitMQ
🤔 Что такое сервер в RabbitMQ?
Сервер RabbitMQ — это масштабируемая и надежная реализация AMQP- брокера, который отвечает за управление сообщениями между производителями и потребителями. Он показывает сообщения о запуске и успешно запускает брокер, если конфигурация выполнена корректно.
👉 Новости 👉 Платформа
Сервер RabbitMQ — это масштабируемая и надежная реализация AMQP- брокера, который отвечает за управление сообщениями между производителями и потребителями. Он показывает сообщения о запуске и успешно запускает брокер, если конфигурация выполнена корректно.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
#полезное
😊 Когда-нибудь нужно было разбить список на чанки без циклов?
Вот однострочник, который делает это через срезы.
Без импортов. Без лишнего
Идеально для батчевой обработки данных или постраничного вывода.
👉 Новости 👉 База вопросов
Вот однострочник, который делает это через срезы.
Без импортов. Без лишнего
Идеально для батчевой обработки данных или постраничного вывода.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👎2👍1
#статьи
😴 PyQt6 — полное руководство для новичков
Это руководство охватывает широкий круг тем по работе с PyQt6: создание окон, настройка интерфейса, подключение виджетов, сигналы и события.
Вы научитесь работать с ключевыми компонентами фреймворка, выстраивать архитектуру интерфейса и логику взаимодействия элементов
Читать
👉 Новости 👉 База вопросов
Это руководство охватывает широкий круг тем по работе с PyQt6: создание окон, настройка интерфейса, подключение виджетов, сигналы и события.
Вы научитесь работать с ключевыми компонентами фреймворка, выстраивать архитектуру интерфейса и логику взаимодействия элементов
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Техническое собеседование, зима 2025. 300к+. Проект: вертикальные видео. Опыт в резюме: 3.3 года. В начале спрашивали про предыдущий опыт.
Вопросы:
- Что такое команда git cherry-pick?
- Как создать генератор с помощью yield?
- Какие дандер-методы нужно реализовать для своего контекстного менеджера?
- Как создать асинхронный контекстный менеджер?
Все вопросы можно посмотреть на нашей платформе
#собес
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2🤝2
#статьи
📞 Фундаментальные шаблоны проектирования на Python
Разбираются классические паттерны на языке программирования python:
наблюдатель, адаптер, команда, компоновщик, декоратор, фасад, фабрика, итератор, заместитель, одиночка, состояние, шаблонный метод.
👉 Новости 👉 База вопросов
Разбираются классические паттерны на языке программирования python:
наблюдатель, адаптер, команда, компоновщик, декоратор, фасад, фабрика, итератор, заместитель, одиночка, состояние, шаблонный метод.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4❤🔥2
#полезное
📞 Совет по Python:
Для асинхронного чтения файлов используй
👉 Новости 👉 База вопросов
Для асинхронного чтения файлов используй
aiofiles
вместе с асинхронными генераторами — это позволит не блокировать event loop
при работе с большими файлами. Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #RabbitMQ
🤔 Что такое обмен сообщениями?
Обмен сообщениями - это способ взаимодействия между системами через отправку сообщений. Он обеспечивает слабую связанность, позволяя приложениям обмениваться данными независимо от их платформ и языков.
👉 Новости 👉 Платформа
Обмен сообщениями - это способ взаимодействия между системами через отправку сообщений. Он обеспечивает слабую связанность, позволяя приложениям обмениваться данными независимо от их платформ и языков.
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#полезное
👋 Чувак собрал простого голосового ассистента на 70 строках кода на Python.
В проекте используются:
🔵 livekit — голосовой агент
🔵 AssemblyAI — для преобразования речи в текст
🔵 OpenAI — «мозг» агента, а также генерация аудио из текста
Что особенно классно —
он использовал turn detection от AssemblyAI, и это работает действительно круто
Turn detection сообщает ассистенту, когда собеседник закончил говорить, и пора отвечать.
Раньше для этого использовали паузы и тишину, но такой подход не всегда корректен (представьте, что человек делает паузу, диктуя номер карты). Новая версия turn detection гораздо надёжнее.
Запусти код и поговори с ассистентом. Всё ощущается гораздо естественнее, чем раньше.
Вот репозиторий: https://github.com/svpino/voice-assistant
Инструкции по запуску смотри в файле README.
👉 Новости 👉 База вопросов
В проекте используются:
Что особенно классно —
он использовал turn detection от AssemblyAI, и это работает действительно круто
Turn detection сообщает ассистенту, когда собеседник закончил говорить, и пора отвечать.
Раньше для этого использовали паузы и тишину, но такой подход не всегда корректен (представьте, что человек делает паузу, диктуя номер карты). Новая версия turn detection гораздо надёжнее.
Запусти код и поговори с ассистентом. Всё ощущается гораздо естественнее, чем раньше.
Вот репозиторий: https://github.com/svpino/voice-assistant
Инструкции по запуску смотри в файле README.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤2
#Собес #RabbitMQ
🤔 Как работает RabbitMQ?
RabbitMQ обрабатывает сообщения через цепочку компонентов: продюсер отправляет сообщение в обмен, который перенаправляет его в очередь согласно правилам маршрутизации, а потребитель обрабатывает сообщение из очереди.
👉 Новости 👉 Платформа
RabbitMQ обрабатывает сообщения через цепочку компонентов: продюсер отправляет сообщение в обмен, который перенаправляет его в очередь согласно правилам маршрутизации, а потребитель обрабатывает сообщение из очереди.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3😁2
#Собес #RabbitMQ
🤔 Каковы недостатки RabbitMQ?
Основные недостатки RabbitMQ включают снижение доступности системы при перегрузке, возможность повторного потребления сообщений, риск потери сообщений без надлежащей конфигурации и сложности обеспечения унифицированного подхода к архитектуре.
👉 Новости 👉 Платформа
Основные недостатки RabbitMQ включают снижение доступности системы при перегрузке, возможность повторного потребления сообщений, риск потери сообщений без надлежащей конфигурации и сложности обеспечения унифицированного подхода к архитектуре.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
LeetCode
Trim a Binary Search Tree - LeetCode
Can you solve this real interview question? Trim a Binary Search Tree - Given the root of a binary search tree and the lowest and highest boundaries as low and high, trim the tree so that all its elements lies in [low, high]. Trimming the tree should not…
#ЛитКод
Задача: 669. Trim a Binary Search Tree
Дано корневое дерево двоичного поиска и нижняя и верхняя границы как low и high. Обрежьте дерево так, чтобы все его элементы лежали в диапазоне [low, high]. Обрезка дерева не должна изменять относительную структуру элементов, которые останутся в дереве (то есть любой потомок узла должен оставаться потомком). Можно доказать, что существует единственный ответ.
Верните корень обрезанного дерева двоичного поиска. Обратите внимание, что корень может измениться в зависимости от заданных границ.
Пример:
👨💻 Алгоритм:
1⃣ Если node.val > high, то обрезанное двоичное дерево должно находиться слева от узла.
2⃣ Если node.val < low, то обрезанное двоичное дерево должно находиться справа от узла.
3⃣ В противном случае обрезаем обе стороны дерева.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 669. Trim a Binary Search Tree
Дано корневое дерево двоичного поиска и нижняя и верхняя границы как low и high. Обрежьте дерево так, чтобы все его элементы лежали в диапазоне [low, high]. Обрезка дерева не должна изменять относительную структуру элементов, которые останутся в дереве (то есть любой потомок узла должен оставаться потомком). Можно доказать, что существует единственный ответ.
Верните корень обрезанного дерева двоичного поиска. Обратите внимание, что корень может измениться в зависимости от заданных границ.
Пример:
Input: root = [1,0,2], low = 1, high = 2
Output: [1,null,2]
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
class Solution:
def trimBST(self, root: TreeNode, low: int, high: int) -> TreeNode:
if not root:
return None
if root.val > high:
return self.trimBST(root.left, low, high)
if root.val < low:
return self.trimBST(root.right, low, high)
root.left = self.trimBST(root.left, low, high)
root.right = self.trimBST(root.right, low, high)
return root
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1