Python Learning
32.6K subscribers
1.95K photos
8 videos
7 files
966 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://t.me/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
Download Telegram
➡️ Преобразование двух списков в словарь

Предположим, у нас имеется два списка. Один из них содержит имена студентов, а второй — их оценки. Как преобразовать эти два списка в словарь?

✔️ Для решения задачи можно прибегнуть к функции zip().

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
➡️ Использование коллекций Python

Коллекции Python — это контейнерные типы данных. В частности, это списки, множества, кортежи, словари. Модуль collections даёт в распоряжение разработчика высокопроизводительные типы данных, которые помогают улучшить код, сделать его чище и облегчить работу с ним. Этот модуль содержит множество полезных методов. Здесь мы рассмотрим метод Counter().

Этот метод принимает итерируемый объект, такой, как список или кортеж, и возвращает словарь, содержащий сведения о количестве различных объектов в исследуемом списке (Counter Dictionary). Ключами такого словаря являются уникальные элементы, представленные в итерируемом объекте, а значениями — количества таких элементов.


🗣️ Для создания объекта Counter нужно передать итерируемый объект (список, например) методу Counter()

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥2
⚙️ dir

Когда-нибудь задумывались о том, как заглянуть внутрь объекта в Python и посмотреть на его атрибуты? Конечно, задумывались.

➡️ Используем командную строку:

>>> dir()
>>> dir("Hello World")
>>> dir(dir)


🗣️ Это может пригодиться при интерактивной сессии в Python, а также для динамического изучения объектов и модулей, с которыми вы работаете.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥2
⚙️ XlsxWriter для записи файлов в формате Excel

ℹ️ XlsxWriter — это очень мощный модуль Python для записи файлов в формате Excel. Он поддерживает добавление текста, чисел, формул, изображений и макросов Excel — среди прочих функциональных возможностей.

✔️ XlsxWriter даже интегрируется с pandas, известным пакетом Python для работы с данными.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥2
Python уже покорен? А как насчет Django?
 
Один из ведущих провайдеров IT-инфраструктуры Selectel подготовил бесплатный мини-курс по Django. Программа начинается с создания и настройки простых проектов: блога и канбан-доски, а завершается подключением автоматических бэкапов.
 
Всего за час вы научитесь:
1️⃣ Работать с бэкендом и API
2️⃣ Создавать веб-приложение по шаблону от Django
3️⃣ Настраивать Nginx и Gunicorn
4️⃣ Автоматизировать резервное копирование
 
Переходите в Академию Selectel, чтобы начать изучение прямо сейчас

Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqwEQ3nk
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤‍🔥3
➡️ Использование подчеркивания в REPL

Вы можете получить результат последнего выражения в Python REPL с помощью оператора подчеркивания, например, в Python REPL это выглядит следующим образом:

>>> 3 * 3
9
>>> _ + 3
12


🗣️ Прием работает и в оболочке IPython.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
➡️ wikipedia

У Wikipedia есть классное API, которое позволяет получить доступ к непревзойдённому источнику полностью бесплатной информации.

✔️ Модуль wikipedia делает доступ к этому API чуть ли чрезмерно удобным.

🗣️ Как и настоящий сайт, модуль предоставляет поддержку многих языков, разрешение многозначности страниц, получение случайной страницы и даже метод donate().

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4
➡️ Проверка необходимой версии Python

✔️ Чтобы ваши пользователи не могли запустить скрипт в несовместимой версии, в коде стоит проверить наличие актуальной версии Python. Проведите простую проверку.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥3
➡️ Использование генераторов для создания бесконечных последовательностей в Python

Генераторы в Python позволяют создавать ленивые последовательности, которые вычисляются по мере необходимости.

🗣️ Это мощный инструмент для работы с большими или даже бесконечными данными, поскольку генераторы экономят память и ресурсы. Один из интересных и необычных способов использования генераторов — создание бесконечных последовательностей.

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
⚙️ sh

Python — отличный скриптовый язык. Но иногда стандартные библиотеки os и subprocess вызывают только головную боль.

✔️ Библиотека sh может стать приятной альтернативой. Она позволяет вызывать любую программу как обычную функцию, что полезно для автоматизации различных задач исключительно с помощью Python.

🗣️ Библиотека sh поддерживает только платформы Linux и macOS; для работы на Windows вам придётся поискать другой инструмент.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
⚙️ Декорируем функции

🗣️ Декоратор – это обертка вокруг функции, которая определенным образом изменяет ее поведение. Существуют варианты использования декораторов, и вы, возможно, уже применяли их раньше при работе с такими фреймворками, как Flask.

def print_argument(func):
def wrapper(the_number):
print("Argument for",
func.__name__,
"is", the_number)
return func(the_number)
return wrapper
@print_argument
def add_one(x):
return x + 1
print(add_one(1))


Внутри print_argument мы определяем функцию-обертку. Она выводит аргумент и имя вызываемой функции, выполняет фактическую функцию и возвращает ее результат, как если бы функция вызывалась «обычно».

➡️ С помощью @print_argument мы применяем наш декоратор к функции. Декоратор может быть повторно использован и для других функций.

Argument for add_one is 1
2


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
⚙️ Работа с хэшируемыми типами данных через __hash__ и __eq__

В Python можно управлять тем, как объекты сравниваются и хэшируются, путем реализации методов __hash__ и __eq__.

🗣️ Это особенно полезно при использовании объектов в качестве ключей в словарях или элементов в множествах, где требуется уникальность.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
➡️ Ленивая инициализация атрибутов с помощью __getattr__

В Python можно реализовать ленивую инициализацию атрибутов объекта с помощью метода __getattr__.

🗣️ Это позволяет отложить вычисление и создание атрибутов до момента их первого обращения, что может быть полезно для оптимизации работы с ресурсозатратными данными.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
➡️ Создание цепочек вызовов методов с использованием класса-обертки

Цепочки вызовов позволяют вызывать несколько методов подряд на одном объекте, возвращая этот объект на каждом шаге. Это удобно для создания более читабельного и компактного кода.

🗣️ В этом примере класс Chainable позволяет создавать цепочки вызовов для выполнения арифметических операций. Методы add, multiply и subtract возвращают сам объект, что позволяет вызывать их последовательно, а метод result возвращает итоговое значение.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
➡️ Click — простой и мощный инструмент для создания CLI

Click — это библиотека Python, которая помогает быстро и просто создавать интерфейсы командной строки (CLI). Она обеспечивает удобное управление командами, параметрами и опциями, поддерживает создание вложенных команд и позволяет легко обрабатывать пользовательский ввод.

🗣 Если вы хотите создать CLI для своего Python-проекта с минимальными усилиями, Click — отличный выбор.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
➡️ FlashText — Быстрый поиск и замена строк

FlashText — это библиотека Python, которая позволяет быстро находить и заменять ключевые слова в строках. В отличие от стандартных методов поиска, таких как регулярные выражения, FlashText работает с целыми словами и значительно быстрее на больших текстах. Эта библиотека особенно полезна, если нужно обрабатывать огромные массивы текстовых данных.

🗣 FlashText — идеальный выбор для поиска и замены ключевых слов в текстах, когда производительность имеет ключевое значение.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⚙️ Pympler для мониторинга и анализа памяти

ℹ️ Библиотека мониторит и анализирует память, которая используется при исполнении кода программ на Python. Инструмент находит ее избыточное потребление, утечки и другие баги.

🗣️ С помощью Pympler можно узнать все о размере и длительности процессов приложения на Python за время работы.

🔗 Ссылочка на доку

Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🏆2
Bidict

Bidict — это библиотека Python, предоставляющая двунаправленное отображение данных и связанные с ним функции для естественной работы с однозначными отношениями.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6