Python - Советы, библиотеки, гайды
19.7K subscribers
1.17K photos
25 videos
6 files
590 links
Всё для Python программиста :3
Готовый код, советы, лайфхаки, годные библиотеки, уроки и многое другое!

Автор - Абрахам (@priler)

РКН: https://kurl.ru/uXZzR
Download Telegram
Суровая реальность 😔
Please open Telegram to view this post
VIEW IN TELEGRAM
💯75😢25👍8🌚6❤‍🔥1
textwrap — стандартный модуль, предоставляющий инструменты для форматирования и обертывания текста в удобочитаемый вид.

textwrap позволяет автоматически разбивать текст на строки заданной ширины, добавлять отступы и выполнять другие операции, чтобы сделать текст более читаемым и оформленным.

В примере выше мы использовали функцию shorten модуля textwrap чтобы сократить текст до желаемой длины

Модуль textwrap также предоставляет другие функции для добавления отступов, выравнивания текста, удаления отступов и многое другое. Он полезен для форматирования вывода текста в различных приложениях, включая консольные утилиты, генерацию документации и создание отчетов.

Подробнее тут :3
👍254❤‍🔥1🌚1
Ребят, мне нужен сетевой специалист с опытом работы в Python... Срочно...
👍106😁40🌚84🏆4😱1
🍳 Задача по Python #41

Описание

Вам предоставляется список целых чисел и индекс n. Ваша задача - поменять местами значения первого и последнего элементов списка, второго и предпоследнего элементов списка и так далее до индекса n.

Примеры
reverse_indices([1, 2, 3, 4, 5, 6], 2) # [3, 2, 1, 4, 5, 6]

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
🔥121👍1
🧠 Заметили ошибку в коде? Знаете, как исправить?

Даже если нет, мы поможем разобраться! Погрузитесь в мир программирования с Яндекс Лицеем! Прокачайтесь в Python, Go, Django и многом другом 🚀
🤡73👍3512❤‍🔥7🔥52🌚2💯1
Кажется, найден минус Python 😳
Please open Telegram to view this post
VIEW IN TELEGRAM
👍76😢14🔥3😁3🤡32
В мире Python есть нечто волшебное и загадочное, что позволяет вам создавать магию в собственных классах.. Они называются "магическими методами" 😱

Эти специальные методы начинаются и заканчиваются двумя подчеркиваниями, и они предоставляют нам управление над различными аспектами объектов и операций.

Представим что у нас есть класс Vector, который представляет собой вектор(🤯) в двумерном пространстве. Для добавления двух векторов вам, возможно, захочется использовать оператор + но как объяснить Python, как складывать объекты этого класса? 😦

Здесь-то нам и пригодятся магические методы. При использовании оператора +, Python автоматически ищет метод add() в объектах, чтобы выполнить соответствующее действие. Для нашего класса Vector, мы можем определить метод add() для определения сложения векторов(см. пример выше)

P.S. init это метод, который автоматически вызывается при создании нового экземпляра класса. Он используется для инициализации начальных значений атрибутов объекта и принимает как минимум один аргумент(в данном случае self), который ссылается на сам объект.
👍53😐61🤡1
У Яндекс-Лицея появилась такая реклама. Напишите какая ошибка будет при запуске такой функции 🌚
👍42😐19🤡112❤‍🔥21
В современном программировании одна из самых ценных валют - это время 🤑💷

Модуль multiprocessing предоставляет инструменты для параллельного выполнения кода, позволяя использовать многопроцессорные системы и ускоряя выполнение задач.

Допустим, у нас есть задача по обработке большого количества файлов, и мы хотим выполнить обработку каждого файла параллельно для ускорения процесса. Для этого у модуля multiprocessing есть класс Pool, который управляет пулом рабочих процессов. Мы можем разделить задачу на подзадачи и выполнять их параллельно с использованием пула.

В примере выше мы используем пул процессов для одновременной(почти. GIL, всё такое) обработки файлов(по комментариям, думаю, всё понятно)

Подробнее тут :3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2832❤‍🔥2
Пожал руку(?) легенде 😎
😁148🌚14🍓7👍65🤔4🎉1
🐥 Задача по Python #42

Описание

Реализуйте функцию 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
А чё всмысле 🌚
🌚150😁25🤡14👍7🤔51🎉1
GeoPandas — библиотека для работы с геоданными.

GeoPandas предоставляет инструменты для обработки геометрических данных, анализа пространственных отношений и визуализации геоданных. GeoPandas строится на базе библиотек Pandas, Shapely и Matplotlib, что делает её удобным инструментом для работы с геоданными.

В примере выше мы загружаем данные о границах стран из GeoPandas. Затем мы выбираем границу Канады и применяем операторы assert для проверки геометрии:
• canada.geometry.is_empty.any() - проверяет, есть ли пустые геометрии. Если граница Канады имеет пустые геометрии, будет вызвано исключение AssertionError.
• canada.geometry.is_valid.all() - проверяет, что все геометрии действительны. Если какая-либо геометрия недействительна, будет вызвано исключение AssertionError.

Ставится командой ⚙️ pip3 install geopandas
Документация и примеры кода здесь :3
👍28❤‍🔥44🌚1
А чё всмысле 🌚
🌚133😁24👍9😐21🤔1🤡1
aiohttp — библиотека для работы с сетевыми запросами в асинхронном режиме

aiohttp предоставляет удобный и эффективный способ выполнять асинхронные HTTP запросы, обработки веб-сокетов и создания асинхронных веб-серверов

Эта библиотека особенно полезна, когда требуется множество параллельных HTTP запросов, например, при сборе данных с веб-страниц или общении с внешними API. aiohttp предоставляет удобный интерфейс для создания асинхронных HTTP клиентов и серверов, что позволяет эффективно управлять асинхронными задачами и достигать высокой производительности

На примере выше, думаю, всё понятно кроме asyncio.gather: с помощью asyncio.gather мы ожидаем завершения всех задач одновременно, что позволяет параллельно получать данные с нескольких URL

Модуль aiohttp, кстати, используется для запросов к Telegram API в aiogram

Ставится командой ⚙️ pip3 install aiohttp
Документация и примеры кода здесь :3
👍325❤‍🔥2🤡1
Он слишком гениален для этого мира...
🌚105🤯17🤡7😁5👍4❤‍🔥3😐21😢1
🐓 Задача по Python #43

Описание

Напишите функцию reverse_anagrams, которая принимает слово и список слов. Функция должна вернуть подсписок из anagrams, который состоит из слов, являющихся анаграммами слова.

Анаграмма - это слово или фраза, составленные из букв другого слова или фразы, при сохранении исходного порядка букв. Например, "listen" и "silent" - это анаграммы.

Примеры
reverse_anagrams("listen", ["enilst", "tac", "netsil", "silent"]) # ["netsil", "silent"]
reverse_anagrams("triangle", ["elgnirta", "square", "angeltir", "glenitar"]) # ["angeltir", "glenitar"]

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
👍163🌚1
Курс по соревновательному Data Science👨‍💻

🏆 Хочешь покорить Kaggle и научиться выигрывать соревнования по анализу данных? Тогда курс "Введение в соревновательный Data Science" - это именно то, что тебе нужно!

🎯 В отличие от большинства курсов по машинному обучению, этот курс сконцентрирован на практике, а не на теории. Поэтому на нем будет более 200 практических заданий, интервью с Kaggle Grand Masters и, конечно же, внутренние соревнования для отработки техник.

⚡️В программе курса тебя ждет:
* Продвинутая работа с pandas и numpy
* Генерация, визуализация и фильтрация признаков
* Модуль про SOTA градиентные бустинги и то как их тюнить
* Стекинг и блендинг моделей
* Ускорение вычислений и оптимизация памяти
* Парсинг данных из открытых источников
* Работа с Kaggle Api и различными облачными вычислительными сервисам
* Нейронки для табличных данных
* Интервью с Kaggle Grand Masters и многое другое

🚀 Еще ребята проводят еженедельные открытые вебинары, на которых разбирают решения победителей с чемпионатов, делают обзоры предстоящих соревнование и рассказывают про необычные техники, с которыми сталкиваются на практике.

🔗 Подписывайся на их телеграмм канал, чтобы подробнее узнать про курс и следить за открытыми вебинарами.
👍9🏆1
А чё всмысле 🌚
🔥155🤡20🌚12😁64😐3👍2🐳1
Faker — полезная библиотека, которая поможет вам создавать реалистичные тестовые данные.

Независимо от того, нужны ли вам данные для тестирования, заполнения базы данных или демонстрации функционала, Faker делает процесс генерации данных простым и эффективным.

Faker предоставляет генераторы для различных типов данных, таких как имена, адреса, номера телефонов, электронные почты, даты, текст и многое другое. Это идеальное решение для тех, кто хочет ускорить процесс тестирования.

На примере выше мы написали функцию generate_fake_user, которая использует различные методы Faker, чтобы создать случайные данные для имени, электронной почты, номера телефона и адреса. Затем мы выводим полученные данные о пользователе.

Ставится командой ⚙️ pip3 install faker
Документация и примеры кода здесь :3
32👍174🌚3🔥1