Сцепление исключений
Сцепление исключений (exception chaining) позволяет сохранять информацию об исключении, которое произошло во вложенном блоке кода, в исключении более высокого уровня. Это полезно для отслеживания причин ошибок и обеспечения более полной информации о том, что произошло.
В примере на картинке, если возникает
#для_продвинутых
Сцепление исключений (exception chaining) позволяет сохранять информацию об исключении, которое произошло во вложенном блоке кода, в исключении более высокого уровня. Это полезно для отслеживания причин ошибок и обеспечения более полной информации о том, что произошло.
В примере на картинке, если возникает
ZeroDivisionError, мы попадаем в блок except, а затем выполняем вложенный код, который вызывает ValueError. С помощью ключевого слова from мы указываем, что исключение ValueError является следствием (частью) исключения ZeroDivisionError. Таким образом, информация об исключении ZeroDivisionError сохраняется.#для_продвинутых
Функция tell()
Функция
Возвращаемое значение: целое число, указывающее положение указателя в байтах от начала потока.
Аргументы:
#для_начинающих
Функция
tell() используется для получения текущей позиции указателя в потоке данных. Она применяется чаще всего при работе с файлами, но также может использоваться с другими типами потоков, например, сокетами или консольным вводом.Возвращаемое значение: целое число, указывающее положение указателя в байтах от начала потока.
Аргументы:
tell() не принимает никаких аргументов.#для_начинающих
Что нам стоит диаграмму в Python построить: 5 вариантов привлекающей внимание визуализации данных и кое-что ещё
Диаграммы помогают визуализировать как простые, так и самые сложные наборы данных. При этом диаграмм — множество видов, у каждого есть свои достоинства и недостатки. О наиболее эффектных и эффективных, реализуемых с Python, мы решили рассказать в сегодняшней подборке.
Смотреть статью
Диаграммы помогают визуализировать как простые, так и самые сложные наборы данных. При этом диаграмм — множество видов, у каждого есть свои достоинства и недостатки. О наиболее эффектных и эффективных, реализуемых с Python, мы решили рассказать в сегодняшней подборке.
Смотреть статью
В чем разница между is() и == в Python?
Операторы is и == в Python выполняют похожие функции, но работают немного по-разному. И если вы новичок, используете сравнения в коде, стоит понимать разницу. Это поможет реже прибегать к рефакторингу и дебагу.
Смотреть статью
Операторы is и == в Python выполняют похожие функции, но работают немного по-разному. И если вы новичок, используете сравнения в коде, стоит понимать разницу. Это поможет реже прибегать к рефакторингу и дебагу.
Смотреть статью
Узнаем сколько свободной памяти на компьютере
Для того, чтобы узнать сколько свободной памяти доступно на компьютере с помощью Python можно использовать модуль psutil.
Метод
Для того, чтобы узнать сколько свободной памяти доступно на компьютере с помощью Python можно использовать модуль psutil.
Метод
virtual_memory() возвращает объект с информацией о памяти системы. Свойство available объекта содержит количество свободной памяти в байтах.Ищем опечатки
Пакет
Пакет поддерживает шесть языков.
Документацию можно найти здесь.
Пакет
spellchecker позволяет отыскать ошибки в тексте, а также может предложить варианты исправлений. В примере проходимся по списку из двух слов, из которых одно ('therre') написано с опечаткой. Функция correction замечает это и предлагает одно самое вероятное исправление, а candidates — несколько.Пакет поддерживает шесть языков.
Документацию можно найти здесь.
Извлекаем имя из адреса электронной почты
Для извлечения имени из адреса электронной почты до символа ‘@‘ можно использовать регулярные выражения.
Это регулярное выражение начинает поиск с начала строки с помощью символа "^" и находит любую комбинацию строчных букв, цифр, дефисов, подчеркиваний, точек и знака минуса. Затем выражение находит символ "@" и останавливается.
Для извлечения имени из адреса электронной почты до символа ‘@‘ можно использовать регулярные выражения.
Это регулярное выражение начинает поиск с начала строки с помощью символа "^" и находит любую комбинацию строчных букв, цифр, дефисов, подчеркиваний, точек и знака минуса. Затем выражение находит символ "@" и останавливается.
cv3 — делаем OpenCV питоничным
cv3 - обёртка над opencv-python, которая ускоряет написание кода, не сужая функциональность
Смотреть статью
cv3 - обёртка над opencv-python, которая ускоряет написание кода, не сужая функциональность
Смотреть статью
Cравнение 2 аудиосообщений
Для сравнения двух аудиосообщений в Python нужно использовать библиотеку для анализа звука, например, librosa или PyAudio.
Здесь мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.
Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).
Для сравнения двух аудиосообщений в Python нужно использовать библиотеку для анализа звука, например, librosa или PyAudio.
Здесь мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.
Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).
Удаляем файл из папки на компьютере
Для удаления файла из папки на ПК в Python можно использовать модуль os.
Здесь сначала мы импортируем модуль os. Затем указываем полный путь к удаляемому файлу в переменной
Если файл существует, мы удаляем его с помощью функции
Для удаления файла из папки на ПК в Python можно использовать модуль os.
Здесь сначала мы импортируем модуль os. Затем указываем полный путь к удаляемому файлу в переменной
file_path. С помощью функции os.path.exists() проверяем, существует ли файл по указанному пути. Если файл существует, мы удаляем его с помощью функции
os.remove(). В противном случае выводим информацию, что такой файл не найден.argparse
Библиотека
В данном примере мы просто выводим значения аргументов на экран, но в реальном приложении вы можете использовать их для выполнения конкретных действий, например, чтения входного файла, обработки данных и записи результата в выходной файл.
Библиотека
argparse является стандартным инструментом для обработки аргументов командной строки в Python. Она позволяет легко определить и обработать аргументы, передаваемые программе при запуске из командной строки.В данном примере мы просто выводим значения аргументов на экран, но в реальном приложении вы можете использовать их для выполнения конкретных действий, например, чтения входного файла, обработки данных и записи результата в выходной файл.
Усыпляем программу
Иногда возникает необходимость остановить выполнение программы, чтобы можно было выполнить несколько других операций, или просто из-за требуемой утилиты. В такой ситуации может пригодиться функция sleep(), которая обеспечивает точный и гибкий способ остановки потока кода на любой период времени.
В нашем примере время начала и время окончания будут напечатаны с задержкой в 6 секунд.
Иногда возникает необходимость остановить выполнение программы, чтобы можно было выполнить несколько других операций, или просто из-за требуемой утилиты. В такой ситуации может пригодиться функция sleep(), которая обеспечивает точный и гибкий способ остановки потока кода на любой период времени.
В нашем примере время начала и время окончания будут напечатаны с задержкой в 6 секунд.
⚠️ Модель работает, но её сложно поддерживать: этапы обработки данных разрознены, обучение нестабильно, результат трудно воспроизвести. Без единого контура управления такие решения быстро теряют ценность.
1 июня в 18:00 МСК приглашаем вас на открытый урок курса «Машинное обучение. Продвинутый уровень».
🦾 На занятии вы разберёте, как с помощью Pipeline объединить подготовку данных, обучение и проверку модели в единую цепочку. Поймёте, как строить составные решения с промежуточными этапами и управлять ими без хаоса. Покажем, как это работает на практике и как применять в реальных задачах.
Вы познакомитесь с преподавателем, увидите формат обучения и сможете задать вопросы.
➡️ Зарегистрируйтесь, чтобы научиться выстраивать устойчивые решения в машинном обучении: https://otus.pw/igEZ/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
1 июня в 18:00 МСК приглашаем вас на открытый урок курса «Машинное обучение. Продвинутый уровень».
🦾 На занятии вы разберёте, как с помощью Pipeline объединить подготовку данных, обучение и проверку модели в единую цепочку. Поймёте, как строить составные решения с промежуточными этапами и управлять ими без хаоса. Покажем, как это работает на практике и как применять в реальных задачах.
Вы познакомитесь с преподавателем, увидите формат обучения и сможете задать вопросы.
➡️ Зарегистрируйтесь, чтобы научиться выстраивать устойчивые решения в машинном обучении: https://otus.pw/igEZ/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
hYPerSonic
hYPerSonic – это фреймворк на языках Python и C. Используется для разработки и эксплуатации конвейеров обработки звука, предназначенных для управления в реальном времени. Эта структура является низкоуровневой, в которой подсчитывается каждый байт, и это также включает объекты для звуковой карты, фильтрует операции с памятью, file – io и осцилляторы. Эта структура работает в операционных системах Linux и OSX.
https://github.com/lwcook/hypersonic-simulation
hYPerSonic – это фреймворк на языках Python и C. Используется для разработки и эксплуатации конвейеров обработки звука, предназначенных для управления в реальном времени. Эта структура является низкоуровневой, в которой подсчитывается каждый байт, и это также включает объекты для звуковой карты, фильтрует операции с памятью, file – io и осцилляторы. Эта структура работает в операционных системах Linux и OSX.
https://github.com/lwcook/hypersonic-simulation
GitHub
GitHub - lwcook/hypersonic-simulation: Python code for hypersonic vehicle simulation
Python code for hypersonic vehicle simulation. Contribute to lwcook/hypersonic-simulation development by creating an account on GitHub.
Разбиваем видео на n кол-во изображений
Для разбиения видео на n количество изображений вам понадобится использовать библиотеку OpenCV в Python.
В этом примере функция
Обратите внимание, что код использует целочисленное деление
Для разбиения видео на n количество изображений вам понадобится использовать библиотеку OpenCV в Python.
В этом примере функция
video_to_images принимает путь к видео (`video_path`) и количество желаемых изображений (`frames_count`). Она открывает видеофайл, читает каждый кадр и сохраняет каждый "шаг" кадров как отдельное изображение. Затем функция прекращает обработку, когда необходимое количество изображений сохранено.Обратите внимание, что код использует целочисленное деление
// и целочисленное преобразование int() для обеспечения, чтобы каждое изображение было сохранено через примерно одинаковое количество кадров, чтобы равномерно распределить их по времени видео.Узнаем разницу в днях между датами представленными в виде строк
В данном коде мы используем функцию
В данном коде мы используем функцию
strptime из модуля datetime, чтобы преобразовать строки в объекты datetime. Затем мы вычисляем разницу между датами с помощью оператора - и получаем абсолютное значение разницы с помощью функции abs. Наконец, мы получаем разницу в днях, используя атрибут days разницы объекта.Напишите функцию на Python, которая принимает на вход список чисел и возвращает наибольшую возрастающую подпоследовательность (непоследовательные числа, идущие в порядке возрастания) из исходного списка
Для решения этой задачи используется динамическое программирование. Мы создаем массив
Пример использования:
Эта функция найдет наибольшую возрастающую подпоследовательность из списка
Для решения этой задачи используется динамическое программирование. Мы создаем массив
dp, где dp[i] представляет собой длину наибольшей возрастающей подпоследовательности, заканчивающейся в nums[i]. Затем мы выполняем двойной цикл, чтобы найти наибольшую длину для каждого элемента. После этого мы определяем саму подпоследовательность, начиная с наибольшей длины и двигаясь обратно по массиву dp.Пример использования:
python
nums = [3, 12, 5, 8, 10, 2, 1]
result = longest_increasing_subsequence(nums)
print(result) # Output: [3, 5, 8, 10]
Эта функция найдет наибольшую возрастающую подпоследовательность из списка
[3, 12, 5, 8, 10, 2, 1], которой будет [3, 5, 8, 10], и выведет ее в консоль.Бэкенд-разработка и архитектура программных систем
Сложные IT-продукты держатся на бэкенде: он отвечает за логику сервиса, работу с данными, API, надёжность и масштабирование.
На онлайн-магистратуре НИУ ВШЭ и Нетологии «Бэкенд-разработка и архитектура программных систем» готовят специалистов, которые умеют проектировать, разрабатывать и развивать серверные приложения.
В программе — фундаментальная инженерная база и современный стек: Python, реляционные и нереляционные базы данных, веб-разработка, архитектура ПО, тестирование, MLOps. На втором курсе можно углубиться в один из языков: Go, Java или Rust.
Обучение построено вокруг практики: проектные семинары, семинары наставника, мастер-классы и практикумы с экспертами IT-компаний. Студенты работают над проектами для портфолио, а ВКР становится полноценным итоговым проектом.
Формат — онлайн, занятия проходят вечером в будни и днём в субботу. После обучения выпускники получают диплом магистра НИУ ВШЭ по направлению «Программная инженерия».
Подробнее о программе → по ссылке
Реклама. ООО "Нетология" ОГРН 1207700135884 Erid: 2VSb5yBJAZx
Сложные IT-продукты держатся на бэкенде: он отвечает за логику сервиса, работу с данными, API, надёжность и масштабирование.
На онлайн-магистратуре НИУ ВШЭ и Нетологии «Бэкенд-разработка и архитектура программных систем» готовят специалистов, которые умеют проектировать, разрабатывать и развивать серверные приложения.
В программе — фундаментальная инженерная база и современный стек: Python, реляционные и нереляционные базы данных, веб-разработка, архитектура ПО, тестирование, MLOps. На втором курсе можно углубиться в один из языков: Go, Java или Rust.
Обучение построено вокруг практики: проектные семинары, семинары наставника, мастер-классы и практикумы с экспертами IT-компаний. Студенты работают над проектами для портфолио, а ВКР становится полноценным итоговым проектом.
Формат — онлайн, занятия проходят вечером в будни и днём в субботу. После обучения выпускники получают диплом магистра НИУ ВШЭ по направлению «Программная инженерия».
Подробнее о программе → по ссылке
Реклама. ООО "Нетология" ОГРН 1207700135884 Erid: 2VSb5yBJAZx
Python декораторы на максималках. Универсальный рецепт по написанию и аннотированию от мала до велика
Декорирование функций - это, наверное, самая сложная среди базовых и самая простая среди продвинутых фич языка Python.
Смотреть статью
Декорирование функций - это, наверное, самая сложная среди базовых и самая простая среди продвинутых фич языка Python.
Смотреть статью