🐥 Задача по Python #40
Описание
Напишите функцию
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Напишите функцию
rgb_to_hex(r: int, g: int, b: int) -> str
, которая принимает значения красного (r), зеленого (g) и синего (b) компонентов цвета (каждое в диапазоне от 0 до 255) и возвращает строку, представляющую цвет в HEX формате.Примеры
rgb_to_hex(255, 192, 0) # ffc000Свой вариант решения в комментарии 💭
rgb_to_hex(0, 128, 255) # 0080ff
Кодом делиться через pastebin.org или repl.it.
#задачи
👍26❤2❤🔥2🔥1🤡1
Появилась статья, которая объясняет что происходит когда запускаешь print("hello world") на Python :3
👍53🤯7🌚6🔥3🤡3😁2❤1
__future__ — модуль, который позволяет программистам использовать функции и синтаксис, которые будут введены в будущих версиях языка. Это позволяет постепенно адаптировать свой код к новым изменениям и синтаксическим конструкциям, даже если текущая версия Python их ещё не поддерживает.
В примере выше мы импортировали async_annotations из модуля future, чтобы использовать аннотации типов для асинхронных функций. В более ранних версиях Python (до 3.5), асинхронные операции с использованием синтаксиса async/await не были поддержаны. Модуль future с атрибутом async_annotations позволяет добавить синтаксическую поддержку асинхронных операций с аннотациями типов для более ранних версий Python. Это может быть полезным, если вы хотите поддерживать код, который будет работать и в более старых версиях Python до перехода на более новые версии.
Подробнее тут :3
В примере выше мы импортировали async_annotations из модуля future, чтобы использовать аннотации типов для асинхронных функций. В более ранних версиях Python (до 3.5), асинхронные операции с использованием синтаксиса async/await не были поддержаны. Модуль future с атрибутом async_annotations позволяет добавить синтаксическую поддержку асинхронных операций с аннотациями типов для более ранних версий Python. Это может быть полезным, если вы хотите поддерживать код, который будет работать и в более старых версиях Python до перехода на более новые версии.
Подробнее тут :3
👍22❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
💯75😢25👍8🌚6❤🔥1
textwrap — стандартный модуль, предоставляющий инструменты для форматирования и обертывания текста в удобочитаемый вид.
textwrap позволяет автоматически разбивать текст на строки заданной ширины, добавлять отступы и выполнять другие операции, чтобы сделать текст более читаемым и оформленным.
В примере выше мы использовали функцию shorten модуля textwrap чтобы сократить текст до желаемой длины
Модуль textwrap также предоставляет другие функции для добавления отступов, выравнивания текста, удаления отступов и многое другое. Он полезен для форматирования вывода текста в различных приложениях, включая консольные утилиты, генерацию документации и создание отчетов.
Подробнее тут :3
textwrap позволяет автоматически разбивать текст на строки заданной ширины, добавлять отступы и выполнять другие операции, чтобы сделать текст более читаемым и оформленным.
В примере выше мы использовали функцию shorten модуля textwrap чтобы сократить текст до желаемой длины
Модуль textwrap также предоставляет другие функции для добавления отступов, выравнивания текста, удаления отступов и многое другое. Он полезен для форматирования вывода текста в различных приложениях, включая консольные утилиты, генерацию документации и создание отчетов.
Подробнее тут :3
👍25❤4❤🔥1🌚1
🍳 Задача по Python #41
Описание
Вам предоставляется список целых чисел и индекс n. Ваша задача - поменять местами значения первого и последнего элементов списка, второго и предпоследнего элементов списка и так далее до индекса n.
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Вам предоставляется список целых чисел и индекс n. Ваша задача - поменять местами значения первого и последнего элементов списка, второго и предпоследнего элементов списка и так далее до индекса n.
Примеры
reverse_indices([1, 2, 3, 4, 5, 6], 2) # [3, 2, 1, 4, 5, 6]Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.
#задачи
🔥12❤1👍1
🧠 Заметили ошибку в коде? Знаете, как исправить?
Даже если нет, мы поможем разобраться! Погрузитесь в мир программирования с Яндекс Лицеем! Прокачайтесь в Python, Go, Django и многом другом 🚀
Даже если нет, мы поможем разобраться! Погрузитесь в мир программирования с Яндекс Лицеем! Прокачайтесь в Python, Go, Django и многом другом 🚀
🤡73👍35❤12❤🔥7🔥5⚡2🌚2💯1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍76😢14🔥3😁3🤡3❤2
В мире Python есть нечто волшебное и загадочное, что позволяет вам создавать магию в собственных классах.. Они называются "магическими методами" 😱
Эти специальные методы начинаются и заканчиваются двумя подчеркиваниями, и они предоставляют нам управление над различными аспектами объектов и операций.
Представим что у нас есть класс Vector, который представляет собой вектор(🤯) в двумерном пространстве. Для добавления двух векторов вам, возможно, захочется использовать оператор + но как объяснить Python, как складывать объекты этого класса? 😦
Здесь-то нам и пригодятся магические методы. При использовании оператора +, Python автоматически ищет метод
P.S. init это метод, который автоматически вызывается при создании нового экземпляра класса. Он используется для инициализации начальных значений атрибутов объекта и принимает как минимум один аргумент(в данном случае self), который ссылается на сам объект.
Эти специальные методы начинаются и заканчиваются двумя подчеркиваниями, и они предоставляют нам управление над различными аспектами объектов и операций.
Представим что у нас есть класс Vector, который представляет собой вектор(🤯) в двумерном пространстве. Для добавления двух векторов вам, возможно, захочется использовать оператор + но как объяснить Python, как складывать объекты этого класса? 😦
Здесь-то нам и пригодятся магические методы. При использовании оператора +, Python автоматически ищет метод
add() в о
бъектах, чтобы выполнить соответствующее действие. Для нашего класса Vector, мы можем определить метод add() для
определения сложения векторов(см. пример выше)P.S. init это метод, который автоматически вызывается при создании нового экземпляра класса. Он используется для инициализации начальных значений атрибутов объекта и принимает как минимум один аргумент(в данном случае self), который ссылается на сам объект.
👍53😐6❤1🤡1
В современном программировании одна из самых ценных валют - это время 🤑 💷
Модуль multiprocessing предоставляет инструменты для параллельного выполнения кода, позволяя использовать многопроцессорные системы и ускоряя выполнение задач.
Допустим, у нас есть задача по обработке большого количества файлов, и мы хотим выполнить обработку каждого файла параллельно для ускорения процесса. Для этого у модуля multiprocessing есть класс Pool, который управляет пулом рабочих процессов. Мы можем разделить задачу на подзадачи и выполнять их параллельно с использованием пула.
В примере выше мы используем пул процессов для одновременной(почти. GIL, всё такое) обработки файлов(по комментариям, думаю, всё понятно)
Подробнее тут :3
Модуль multiprocessing предоставляет инструменты для параллельного выполнения кода, позволяя использовать многопроцессорные системы и ускоряя выполнение задач.
Допустим, у нас есть задача по обработке большого количества файлов, и мы хотим выполнить обработку каждого файла параллельно для ускорения процесса. Для этого у модуля multiprocessing есть класс Pool, который управляет пулом рабочих процессов. Мы можем разделить задачу на подзадачи и выполнять их параллельно с использованием пула.
В примере выше мы используем пул процессов для одновременной(почти. GIL, всё такое) обработки файлов(по комментариям, думаю, всё понятно)
Подробнее тут :3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28⚡3❤2❤🔥2
🐥 Задача по Python #42
Описание
Реализуйте функцию count_unique_elements, которая будет подсчитывать количество уникальных элементов в списке. Уникальные элементы не должны повторяться в подсчете, даже если они встречаются несколько раз.
Примеры
Кодом делиться через pastebin.org или repl.it.
#задачи
Описание
Реализуйте функцию count_unique_elements, которая будет подсчитывать количество уникальных элементов в списке. Уникальные элементы не должны повторяться в подсчете, даже если они встречаются несколько раз.
Примеры
count_unique_elements([1, 2, 2, 3, 3, 3, 4, 4, 4, 4]) # 4Свой вариант решения в комментарии 💭
count_unique_elements(['apple', 'banana', 'apple', 'cherry']) # 3
count_unique_elements([]) # 0
Кодом делиться через pastebin.org или repl.it.
#задачи
🔥14👍3🤡3
GeoPandas — библиотека для работы с геоданными.
GeoPandas предоставляет инструменты для обработки геометрических данных, анализа пространственных отношений и визуализации геоданных. GeoPandas строится на базе библиотек Pandas, Shapely и Matplotlib, что делает её удобным инструментом для работы с геоданными.
В примере выше мы загружаем данные о границах стран из GeoPandas. Затем мы выбираем границу Канады и применяем операторы assert для проверки геометрии:
• canada.geometry.is_empty.any() - проверяет, есть ли пустые геометрии. Если граница Канады имеет пустые геометрии, будет вызвано исключение AssertionError.
• canada.geometry.is_valid.all() - проверяет, что все геометрии действительны. Если какая-либо геометрия недействительна, будет вызвано исключение AssertionError.
Ставится командой ⚙️
GeoPandas предоставляет инструменты для обработки геометрических данных, анализа пространственных отношений и визуализации геоданных. GeoPandas строится на базе библиотек Pandas, Shapely и Matplotlib, что делает её удобным инструментом для работы с геоданными.
В примере выше мы загружаем данные о границах стран из GeoPandas. Затем мы выбираем границу Канады и применяем операторы assert для проверки геометрии:
• canada.geometry.is_empty.any() - проверяет, есть ли пустые геометрии. Если граница Канады имеет пустые геометрии, будет вызвано исключение AssertionError.
• canada.geometry.is_valid.all() - проверяет, что все геометрии действительны. Если какая-либо геометрия недействительна, будет вызвано исключение AssertionError.
Ставится командой ⚙️
pip3 install geopandas
Документация и примеры кода здесь :3👍28❤🔥4❤4🌚1
aiohttp — библиотека для работы с сетевыми запросами в асинхронном режиме
aiohttp предоставляет удобный и эффективный способ выполнять асинхронные HTTP запросы, обработки веб-сокетов и создания асинхронных веб-серверов
Эта библиотека особенно полезна, когда требуется множество параллельных HTTP запросов, например, при сборе данных с веб-страниц или общении с внешними API. aiohttp предоставляет удобный интерфейс для создания асинхронных HTTP клиентов и серверов, что позволяет эффективно управлять асинхронными задачами и достигать высокой производительности
На примере выше, думаю, всё понятно кроме asyncio.gather: с помощью asyncio.gather мы ожидаем завершения всех задач одновременно, что позволяет параллельно получать данные с нескольких URL
Модуль aiohttp, кстати, используется для запросов к Telegram API в aiogram
Ставится командой ⚙️
aiohttp предоставляет удобный и эффективный способ выполнять асинхронные HTTP запросы, обработки веб-сокетов и создания асинхронных веб-серверов
Эта библиотека особенно полезна, когда требуется множество параллельных HTTP запросов, например, при сборе данных с веб-страниц или общении с внешними API. aiohttp предоставляет удобный интерфейс для создания асинхронных HTTP клиентов и серверов, что позволяет эффективно управлять асинхронными задачами и достигать высокой производительности
На примере выше, думаю, всё понятно кроме asyncio.gather: с помощью asyncio.gather мы ожидаем завершения всех задач одновременно, что позволяет параллельно получать данные с нескольких URL
Модуль aiohttp, кстати, используется для запросов к Telegram API в aiogram
Ставится командой ⚙️
pip3 install aiohttp
Документация и примеры кода здесь :3👍32❤5❤🔥2🤡1