Работа с поверхностными и глубокими копиями в Python
В этой статье объясняется как делать копии списков Python, массивов NumPy и датафреймов Pandas при помощи операций получения срезов, списочного индексирования (fancy indexing) и логического (boolean indexing). Эти операции очень часто используются при анализе данных и должны рассматриваться всерьёз, поскольку ошибочные предположения могут привести к падению быстродействия или неожиданным результатам.
Читать...
Разъяснивший Python
В этой статье объясняется как делать копии списков Python, массивов NumPy и датафреймов Pandas при помощи операций получения срезов, списочного индексирования (fancy indexing) и логического (boolean indexing). Эти операции очень часто используются при анализе данных и должны рассматриваться всерьёз, поскольку ошибочные предположения могут привести к падению быстродействия или неожиданным результатам.
Читать...
Разъяснивший Python
Хабр
Работа с поверхностными и глубокими копиями в Python
В этой статье объясняется, как делать копии списков Python, массивов NumPy и датафреймов Pandas при помощи операций получения срезов, списочного индексирования (fancy indexing) и логического (boolean...
Как программисту найти работу с релокацией
В этом ролике автор поделится полезной информацией по трудоустройству заграницей и успешной релокации.
Смотреть...
Разъяснивший Python
В этом ролике автор поделится полезной информацией по трудоустройству заграницей и успешной релокации.
Смотреть...
Разъяснивший Python
YouTube
Как найти работу программисту с релокацией в Европу
Linkedin, сайт для поиска работы: https://www.linkedin.com/. Используйте VPN, если не открывается.
Мой телеграм канал про поиск работы заграницей: https://t.iss.one/devfjobs
Рекрутинговое агенство: https://www.codeguild.nl/en/
Таймкоды:
0:00 Начало
0:23 Какой…
Мой телеграм канал про поиск работы заграницей: https://t.iss.one/devfjobs
Рекрутинговое агенство: https://www.codeguild.nl/en/
Таймкоды:
0:00 Начало
0:23 Какой…
Метод remove() - помощь в удаление элемента из списка
Списк состоит из строк и целых чисел. Есть повторяющиеся элементы: строка «Mars» и число 12. Задаём отрезок и с помощью метода remove чистим список.
Разъяснивший Python
Списк состоит из строк и целых чисел. Есть повторяющиеся элементы: строка «Mars» и число 12. Задаём отрезок и с помощью метода remove чистим список.
Разъяснивший Python
Курс по FastAPI на Python для начинающих
В этом видео автор делает полный разбор фреймворка FastAPI на языке Python с первых строчек до деплоя на реальный сервер.
Смотреть...
Разъяснивший Python
В этом видео автор делает полный разбор фреймворка FastAPI на языке Python с первых строчек до деплоя на реальный сервер.
Смотреть...
Разъяснивший Python
YouTube
Пет-проект на Python за 50 минут. Курс по FastAPI для начинающих
Разбор фреймворка FastAPI на языке Python с первых строчек до деплоя на реальный сервер.
Текстовая версия: https://slc.tl/5nqib
Облачный сервер для ваших проектов: https://slc.tl/3c00t
🎓 Мы обучаем Python так, чтобы ты писал код как инженер. Заходи и начни…
Текстовая версия: https://slc.tl/5nqib
Облачный сервер для ваших проектов: https://slc.tl/3c00t
🎓 Мы обучаем Python так, чтобы ты писал код как инженер. Заходи и начни…
Объяснение:
copy.copy делает поверхностную копию. Вложенные списки остаются теми же объектами. В результате будет [[1, 2, 99], [3, 4]]
Разъяснивший Python
copy.copy делает поверхностную копию. Вложенные списки остаются теми же объектами. В результате будет [[1, 2, 99], [3, 4]]
Разъяснивший Python
Backpressure в async Python-сервисах: как bounded queues, лимиты конкуренции и таймауты останавливают cascading failure
Это не микрооптимизация, а механизм выживания backend-сервиса под нагрузкой. В production проблема часто появляется на медленном downstream: таски плодятся, память растет, клиенты ретраят, и падает уже цепочка сервисов.
Очередь не должна быть бесконечной
Лимитируйте конкуренцию
Async не означает “можно запустить 100k запросов к API или базе”.
Это не микрооптимизация, а механизм выживания backend-сервиса под нагрузкой. В production проблема часто появляется на медленном downstream: таски плодятся, память растет, клиенты ретраят, и падает уже цепочка сервисов.
Очередь не должна быть бесконечной
asyncio.Queue() без maxsize часто превращает память процесса в скрытый буфер аварии. Делайте очередь bounded и решайте, что делать при переполнении: ждать, вернуть 429/503 или отбросить низкоприоритетную работу.Лимитируйте конкуренцию
Async не означает “можно запустить 100k запросов к API или базе”.
queue = asyncio.Queue(maxsize=1000)
limit = asyncio.Semaphore(50)
async def submit(item):
try:
queue.put_nowait(item)
except asyncio.QueueFull:
raise Overloaded()
async def worker():
while True:
item = await queue.get()
try:
async with limit:
await asyncio.wait_for(
🤬2
Forwarded from Находки Программиста
Цена: ~1000 руб. (без скидки 4900 руб.)
Доставка: бесплатная
Ортопедическая подушка La fete является отличным средством улучшения качества жизни. Она изготовлена из плотного материала пенополиуретан с эффектом памяти.
Подушка поддерживает правильную позицию тела и уменьшает нагрузку на суставы.
#подушка #кресло
Больше полезных товаров в Находки Программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод опорных векторов (SVM): подходы, принцип работы и реализация с нуля на Python
Метод опорных векторов — мощный и универсальный набор алгоритмов для работы с данными любой формы, применяемый не только для задач классификации и регрессии, но и также для выявления аномалий. В этой статье автор рассмотрит основные подходы к созданию SVM, принцип работы, а также реализацию с нуля его наиболее популярных разновидностей.
Читать...
Разъяснивший Python
Метод опорных векторов — мощный и универсальный набор алгоритмов для работы с данными любой формы, применяемый не только для задач классификации и регрессии, но и также для выявления аномалий. В этой статье автор рассмотрит основные подходы к созданию SVM, принцип работы, а также реализацию с нуля его наиболее популярных разновидностей.
Читать...
Разъяснивший Python
Хабр
Метод опорных векторов (SVM). Подходы, принцип работы и реализация с нуля на Python
Метод опорных векторов (Support Vector Machines или просто SVM) — мощный и универсальный набор алгоритмов для работы с данными любой формы, применяемый не только для задач классификации и регрессии,...
Вывод строки по отдельным символам
Иногда при работе со строками нам нужны отдельные буквы. В таких случаях мы можем использовать цикл for для перебора символов и их печати.
Разъяснивший Python
Иногда при работе со строками нам нужны отдельные буквы. В таких случаях мы можем использовать цикл for для перебора символов и их печати.
Разъяснивший Python
Работаем с итерируерыми объектами
Все мы начинали писать на Python примерно одинаково: создавали пустой список, запускали цикл for, проверяли условие через if и делали .append(). Это надежно, предсказуемо, но по мере роста кодовой базы такие конструкции начинают утомлять. В этой статье автор подробно разбирает встроенный инструментарий для работы с итерируемыми объектами.
Читать...
Разъяснивший Python
Все мы начинали писать на Python примерно одинаково: создавали пустой список, запускали цикл for, проверяли условие через if и делали .append(). Это надежно, предсказуемо, но по мере роста кодовой базы такие конструкции начинают утомлять. В этой статье автор подробно разбирает встроенный инструментарий для работы с итерируемыми объектами.
Читать...
Разъяснивший Python
Хабр
Разбираем map, filter, reduce, any, all, zip и enumerate в Python
Все мы начинали писать на Python примерно одинаково: создавали пустой список, запускали цикл for , проверяли условие через if и делали .append() . Это надежно, предсказуемо, но слишком громоздко. По...
Когда типизация делает больно: как у нас появился статический анализатор
Язык программирования Python в силу своей динамичности может легко создать ситуацию, когда статический анализатор не может вывести типы и, как следствие, часть проверок отключается. В этой статье автор подробно расскажет о проблеме в разработке системы управления выделенными серверами.
Читать...
Разъяснивший Python
Язык программирования Python в силу своей динамичности может легко создать ситуацию, когда статический анализатор не может вывести типы и, как следствие, часть проверок отключается. В этой статье автор подробно расскажет о проблеме в разработке системы управления выделенными серверами.
Читать...
Разъяснивший Python
Хабр
Когда типизация делает тебе больно: как у нас появился статический анализатор
Удобство процесса разработки напрямую влияет на скорость работы и на количество ошибок при написании кода. Что делать, если среда разработки почему-то отказывается использовать автодополнение во всю...
Конвертируем данные и файлы в PDF
Делимся новым циклом видеоматериалов, посвященный работе с текстовыми документами. В первой части автор рассказывает, как конвертируются данные и файлы в PDF с помощью Python.
Смотреть...
Разъяснивший Python
Делимся новым циклом видеоматериалов, посвященный работе с текстовыми документами. В первой части автор рассказывает, как конвертируются данные и файлы в PDF с помощью Python.
Смотреть...
Разъяснивший Python
YouTube
Конвертация данных и файлов в PDF на python (питон)
Конвертация данных и файлов в PDF на python (питон)
★ Телеграм канал: https://t.iss.one/programmersGuide_1
★ Группа ВК: https://vk.com/club123524808
► Поддержать автора:
https://www.donationalerts.com/r/it_start
► Другие видео:
★ Плейлист со всеми уроками…
★ Телеграм канал: https://t.iss.one/programmersGuide_1
★ Группа ВК: https://vk.com/club123524808
► Поддержать автора:
https://www.donationalerts.com/r/it_start
► Другие видео:
★ Плейлист со всеми уроками…
Декораторы классов
В этом примере мы определяем декоратор add_hello, который добавляет вывод "Hello!" перед вызовом метода greet в классе MyClass. Мы применяем декоратор к методу greet с помощью @add_hello, и теперь при вызове obj.greet(), помимо обычного приветствия, будет также выведено "Hello!".
Разъяснивший Python
В этом примере мы определяем декоратор add_hello, который добавляет вывод "Hello!" перед вызовом метода greet в классе MyClass. Мы применяем декоратор к методу greet с помощью @add_hello, и теперь при вызове obj.greet(), помимо обычного приветствия, будет также выведено "Hello!".
Разъяснивший Python
Пишем свой HEX-редактор
Делимся подробным гайдом по созданию собственного HEX-редактора. Ты не только напишешь редактор, но и разберешься во всех внутренностях проекта: от битового представления до цветовой подсветки.
Читать...
Разъяснивший Python
Делимся подробным гайдом по созданию собственного HEX-редактора. Ты не только напишешь редактор, но и разберешься во всех внутренностях проекта: от битового представления до цветовой подсветки.
Читать...
Разъяснивший Python
Хабр
Байты, нибблы, и подсветка: пишем свой TUI hex-редактор на Python
Многие могли открывать HEX-редакторы для анализа файла или для обучения реверс-инжинирингу. Однажды я наткнулся на интересный материал о подсветке байтов . Недолго думая, я решил написать статью — не...
GIL в threading — это боль, которую многие просто принимают как данность
До Python 3.13 альтернатив не было:
Кейс из продакшна: пул потоков без прироста
Я написал пул потоков для обработки пакетов данных: каждый поток выполнял CPU-bound трансформацию. GIL не отпускался, прирост 0%. Переписал на
Free-threaded Python 3.13: сборка без GIL
В 3.13 появился флаг
Разъяснивший Python
До Python 3.13 альтернатив не было:
multiprocessing с оверхедом и морокой передачи данных, или asyncio, бесполезный при CPU-bound задачах. Реальные кейсы — обработка данных, парсинг, криптография — где threading кажется логичным, но GIL заставляет ядра простаивать, а однопоточный код обгоняет многопоточный.Кейс из продакшна: пул потоков без прироста
Я написал пул потоков для обработки пакетов данных: каждый поток выполнял CPU-bound трансформацию. GIL не отпускался, прирост 0%. Переписал на
multiprocessing — 3x, но память выросла в 4 раза. Типичная ошибка: думать, что threading даст параллелизм для чистых вычислений.Free-threaded Python 3.13: сборка без GIL
В 3.13 появился флаг
--disable-gil. Потоки наконец работают параллельно. На четырех ядрах прирост по CPU-bound задачам — 3-4x. Пример теста:# threading с GIL (стандартная сборка)
import threading, time
def work():
for _ in range(10**7):
x = 1 + 1
threads = [threading.Thread(target=work) for _ in range(4)]
start = time.time()
for t in threads: t.start()
for t in threads: t.join()
print(f"С GIL: {time.time() - start:.2f}s")
# Вывод: ~2.5s (почти как последовательно)
# free-threaded (сборка без GIL)
# Тот же код — результат ~0.8s (на 4 ядрах)
Разъяснивший Python
Конвертируем PDF в TXT
Продолжаем делиться циклом видеоматериалов, посвященный работе с текстовыми документами. В этот раз автор наглядно демонстрирует конвертацию PDF-файла в TXT-файл.
Смотреть...
Разъяснивший Python
Продолжаем делиться циклом видеоматериалов, посвященный работе с текстовыми документами. В этот раз автор наглядно демонстрирует конвертацию PDF-файла в TXT-файл.
Смотреть...
Разъяснивший Python
YouTube
Конвертация pdf в txt на python (питон)
Конвертация pdf в txt на python (питон)
★ Телеграм канал: https://t.iss.one/programmersGuide_1
★ Группа ВК: https://vk.com/club123524808
► Другие видео:
★ Плейлист со всеми уроками по python: https://www.youtube.com/watch?v=L5yIt2BblfA&list=PL9aGGxgLOVw4a…
★ Телеграм канал: https://t.iss.one/programmersGuide_1
★ Группа ВК: https://vk.com/club123524808
► Другие видео:
★ Плейлист со всеми уроками по python: https://www.youtube.com/watch?v=L5yIt2BblfA&list=PL9aGGxgLOVw4a…
This media is not supported in your browser
VIEW IN TELEGRAM
Нейросети уже заменяют носителей языка.
В Telegram быстро набирает популярность ИИ-девушка Chatty, с которой можно голосом практиковать живой разговорный английский и ещё 12 языков на основе новейших моделей искусственного интеллекта. Попробовать можно бесплатно.
🇬🇧 Английский: @ChattyTutorBot
🇩🇪 Немецкий: @ChattyGermanBot
🇪🇸 Испанский: @ChattySpanishBot
🇫🇷 Французский: @ChattyFrenchBot
🇮🇹 Итальянский: @ChattyItalianBot
🇵🇹 Португальский: @ChattyPortugueseBot
🇨🇳 Китайский: @ChattyChineseBot
🇯🇵 Японский: @ChattyJapaneseBot
🇰🇷 Корейский: @ChattyKoreanBot
🇸🇦 Арабский: @ChattyArabicBot
🇹🇷 Турецкий: @ChattyTurkishBot
🇷🇺 Русский: @ChattyRussianBot
🇵🇱 Польский: @ChattyPolandBot
В Telegram быстро набирает популярность ИИ-девушка Chatty, с которой можно голосом практиковать живой разговорный английский и ещё 12 языков на основе новейших моделей искусственного интеллекта. Попробовать можно бесплатно.
🇬🇧 Английский: @ChattyTutorBot
🇩🇪 Немецкий: @ChattyGermanBot
🇪🇸 Испанский: @ChattySpanishBot
🇫🇷 Французский: @ChattyFrenchBot
🇮🇹 Итальянский: @ChattyItalianBot
🇵🇹 Португальский: @ChattyPortugueseBot
🇨🇳 Китайский: @ChattyChineseBot
🇯🇵 Японский: @ChattyJapaneseBot
🇰🇷 Корейский: @ChattyKoreanBot
🇸🇦 Арабский: @ChattyArabicBot
🇹🇷 Турецкий: @ChattyTurkishBot
🇷🇺 Русский: @ChattyRussianBot
🇵🇱 Польский: @ChattyPolandBot
Python без типов: таким он когда-то был
Существует фундаментальный и глубокий конфликт между формообразующей философией Python и концепцией типизации. Причём, этот конфликт не нов.
Читать...
Разъяснивший Python
Существует фундаментальный и глубокий конфликт между формообразующей философией Python и концепцией типизации. Причём, этот конфликт не нов.
Читать...
Разъяснивший Python
Хабр
Python без типов: таким он когда-то был
О типизации в Python сказано уже очень много. Если вам выпало сомнительное удовольствие поработать со мной, то вы, вероятно, в курсе, насколько скептически я отношусь к типизации в Python. Причины...
JIT-компилятор Python в 300 строк
В области JIT-компиляции промышленным решением является проект Numba, спонсируемый такими технологическими гигантами как Intel, AMD и NVIDIA. Именно с этим пакетом автор и решил посоревноваться, написав миниатюрный JIT-компилятор программ на Питоне.
В этой статье автор расскажет, с какими трудностями он, как программист достаточно прикладной, столкнулся при разработке такой довольно низкоуровневой вещи, как миниатюрный JIT-компилятор.
Читать...
Разъяснивший Python
В области JIT-компиляции промышленным решением является проект Numba, спонсируемый такими технологическими гигантами как Intel, AMD и NVIDIA. Именно с этим пакетом автор и решил посоревноваться, написав миниатюрный JIT-компилятор программ на Питоне.
В этой статье автор расскажет, с какими трудностями он, как программист достаточно прикладной, столкнулся при разработке такой довольно низкоуровневой вещи, как миниатюрный JIT-компилятор.
Читать...
Разъяснивший Python
Хабр
JIT-компилятор Python в 300 строк
Может ли студент второго курса написать JIT -компилятор Питона, конкурирующий по производительности с промышленным решением? С учётом того, что он это сделает за две недели за зачёт по...
Выявление проблем в log-файлах с помощью аналитики
Log-файлы систематически записывают хронологию событий, происходящих в системе. Это может быть что угодно: от записи о запуске программы до детальной информации об ошибках и предупреждениях. Для нас log-файлы — это не просто дневники событий, а очень хороший инструмент для диагностики и устранения проблем.
Читать...
Разъяснивший Python
Log-файлы систематически записывают хронологию событий, происходящих в системе. Это может быть что угодно: от записи о запуске программы до детальной информации об ошибках и предупреждениях. Для нас log-файлы — это не просто дневники событий, а очень хороший инструмент для диагностики и устранения проблем.
Читать...
Разъяснивший Python
Хабр
Выявление проблем в log-файлах с помощью аналитики
Привет, Хабр! Log-файлы систематически записывают хронологию событий, происходящих в системе (или приложение). Это может быть что угодно: от записи о запуске программы до детальной информации об...