Just Python
10.3K subscribers
4.33K photos
11 videos
4.31K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Скачивание видео с YouTube

На YouTube есть много хорошего контента, как образовательного, так и развлекательного. Все это можно смотреть совершенно бесплатно, вот только возможности скачать там нет. Тем не менее, скачать понравившееся видео реально, если воспользоваться сторонними сервисами.

#theory // Just Python
Генератор QR-кодов

Сегодня QR-коды уже никого не удивляют. Среди прочего они используются в приложениях для совершения платежей, где экономят время пользователя. Мы можем создать QR-код для перехода на свой сайт или профиль при помощи библиотеки qrcode.

#theory // Just Python
Сокращение ссылок

При постоянной работе с URL часто возникает необходимость сократить длинную ссылку. Для этого есть специальные онлайн-сервисы типа bit.ly, которые сокращают URL до 50 символов. Мы можем создать собственный инструмент для сокращения ссылок при помощи библиотеки pyshorteners.

#theory // Just Python
Библиотека FuzzyWuzzy

Интересная и полезная библиотека поиска совпадений в тексте. Очень поможет вам при работе над общающимися ботами: голосовыми или текстовыми помощниками.

Разумеется, это один из инструментов, всегда можно использовать другой, но я лично пользуюсь этим.

Библиотеку следует установить:

 install fuzzywuzzy

Несколько примеров работы библиотеки на картинке.

#theory // Just Python
Библиотека colorama

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

Библиотеку надо установить:

 install colorama

Colorama позволяет изменять сам цвет текста, а так же его фон и стиль цвета. На картинке мы не можем показать изменение фона, но вы можете опробовать сами.

#theory // Just Python
Библиотека Progressbar

Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение прогресса, чтобы пользователь не беспокоился, что программа не отвечает.

В первую очередь это касается синхронных приложений. Ведь, если наш код выполняет что-то одно, то на другие действия он не будет реагировать, ставя их в очередь. Ну и еще один вариант показывать, что программа не виснет, а думает, при этом не обязательно показывать прогресс.

Все это очень интересно, но если мы начнем самостоятельно писать полосу прогресса, то отвлечемся от основного кода. К счастью, в python есть библиотека Progressbar, которая делает все за нас.

#theory // Just Python
Строка – заголовок

Функция title() преобразует первую букву в слове на заглавную. Помогает при быстром получении красивых заголовках.

#theory // Just Python
Возврат нескольких значений

Функции в Python могут возвращать более одной переменной без применения словаря, списка или класса.

#theory // Just Python
discard()

Команда discard() позволяет удалить указанный элемент из набора. Если элемент не найден в наборе, она не выдаст ошибку.

#theory // Just Python
find()

Команда find() используется для поиска подстроки в строке. Если таковая найдена, find() возвращает индекс первого вхождения подстроки, в противном случае возвращает -1.

#theory // Just Python
capitalize()

Строковая функция capitalize() возвращает строку, изменяя ее первый символ на верхний регистр, а остальные переводя в нижний. Если первый символ уже в верхнем регистре, а также представляет собой целое число или любой специальный символ, команда ничего не делает.

#theory // Just Python
Модули

Для сохранения удобства управления своими программами по мере их роста, вы можете разбить их на несколько файлов. Python позволяет поместить множество функций в файл и использовать их в качестве модуля. Эти файлы должны иметь расширение .py. В дальнейшем модули можно импортировать в другие скрипты и программы.

#theory // Just Python
Условные выражения

Python допускает условные выражения. В этом языке есть интуитивно понятный способ написания условных выражений.

#theory // Just Python
Нахождение элементов, которые встречаются в итерируемом объекте чаще всего

Нахождение в списке таких элементов, которые встречаются в нём чаще других, это весьма распространённая задача. Но такой подход — это пустая трата времени. Дело в том, что решать подобные задачи можно с помощью класса Counter из модуля collections.

#theory // Just Python
Работа с IP-адресами

Если вам приходится писать на Python программы для работы с сетью — это значит, что вам может очень пригодиться модуль ipaddress. Одним из вариантов его использование является генерирование списка IP-адресов из диапазона адресов, заданных в формате CIDR (Classless Inter-Domain Routing, бесклассовая адресация).

#theory // Just Python
Запрос пароля у пользователя во время выполнения программы

Множеству инструментов командной строки или скриптов для работы требуется имя пользователя и пароль. Если вам придётся писать подобную программу — вы, возможно, сочтёте полезным модуль getpass

#theory // Just Python
Экономия памяти с помощью slots

Здес
ь, когда мы объявляем атрибут slots, Python использует для хранения атрибутов не словарь, а маленький массив фиксированного размера. Это серьёзно сокращает объём памяти, необходимый для каждого из экземпляров класса. У применения атрибута slots есть и некоторые недостатки. Так, пользуясь им, мы не можем объявлять новые атрибуты, мы ограничены только теми, которые имеются в slots. Кроме того, классы c атрибутом slots не могут использовать множественное наследование.

#theory // Just Python
Создание объектов, поддерживающих выражение with

Все знают о том, как, например, открыть файл, или, возможно, как установить блокировку с использованием оператора with. Но можно ли самостоятельно реализовать механизм управления блокировками? Да, это вполне реально. Протокол управления контекстом исполнения реализуется с использованием методов enter и exit

#theory // Just Python
Сделать список плоским (ч.1)

Ох уж эти списки, состоящие из списков. Как бы их сделать попроще, выстроить в один ряд? Для этого тоже есть решение.

В третьей строке код проверяет, не является ли элемент списком. Если да, то использует метод extend() для расширения этим элементом итогового списка.

#theory // Just Python
%dhist

Это очень полезная магическая команда; она печатает все каталоги, которые мы посетили в текущем сеансе. Каждый раз, когда выполняется команда %cd, она обновляется в переменной _dh.

#theory // Just Python