Python на примерах
1.39K subscribers
411 photos
6 videos
145 links
Короткие уроки Python на примерах
Download Telegram
Сокращение ссылок

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

Создать такую ссылку можно всего за три строчки кода, при помощи использования библиотеки PyShorteners. Вам нужно установить библиотеку в проект, выполнить её подключение, а также создать объект на её основе.

Установка библиотеки - pip install pyshorteners.
👍3❤1
Простая фишка, о которой знает небольшое количество разработчиков. Если у вас есть несколько переменных, можно присвоить им значения в одну строчку.
👍5
Копирование объектов

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

Если же использовать copy.deepcopy(), то получатся "настоящие" копии объекта и всех его ссылок.
👍4
Находим подстроку

В Python легко проверить, является ли какая-то строка частью другой строки. Достаточно использовать оператор in.

Оператор пригодится при анализе больших текстов и их классификации.
Распаковка массива

Иногда возникает необходимость красиво и быстро вывести содержимое массива (например, в задачах на хакатонах). Для этого поможет оператор *.

Причем тут оператор * — не просто синтаксический сахар, так как без фиксированной длины списка было бы невозможно передать элементы списка как отдельные аргументы.
Проверка возможности вызова

Есть встроенная возможность быстро проверить, получится ли вызвать ту или иную переменную (либо значение) с помощью (). Для этого можно вызвать функцию callable.
Удаление специальных символов при помощи join() и filter()

Давайте воспользуемся методом соединения join(). Откройте тот же файл и инициализируйте строку с обычными и специальными символами. Первоначальная строка будет выводиться на экран первой.

Далее мы используем метод join() с функцией filter() для строковой переменной v1, чтобы отфильтровать символы. В данном случае для сбора только обычных символов из переменной v1 используется метод isalnum().
setattr()

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

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

В этом пакете есть две основные функции — copy() и paste(), по названиям которых сразу понятны их предназначения — копировать и вставлять.

Получается, что можно прямо через код копировать вывод программы в буфер обмена вместо того, чтобы делать это вручную.
👍4❤1
Превращаем PDF в текст

Думаю, все периодически работают с PDF-документами. И зачастую это ручная и скучная работа. Но Python может автоматизировать даже такую рутинную задачу.

Модуль pdftotext создан именно для работы с документами в PDF формате. Устанавливается он через пакетный менеджер pip, а использовать его проще простого. Все основные операции представлены на картинке выше.

Кстати, здесь ещё интересно то, что исходный код модуля написан на C++. Поэтому есть небольшая вероятность, что придётся повоевать с зависимостями.
👍10
Как найти длину массива в Python

Чтобы узнать точное количество элементов, содержащихся в массиве, можно использовать встроенный метод len().

Он вернет вам целое число, равное общему количеству элементов в указанном вами массиве.

В этом примере массив содержал три элемента — 10, 20, 30. Поэтому длина массива равна 3.
👍1
Все циклы for в Python используют итераторы

В Python нет циклов for в стиле C. А циклы for в Python-стиле напоминают циклы for each в других языках. Это тип цикла, в котором используются итераторы. То есть каждый цикл for, который вы пишете на Python, должен использовать итератор.

Если вы внимательно посмотрите на пример на JavaScript, вы увидите, что мы сообщаем циклу, когда нужно завершить (i < ), а также — как инкременировать (i++).
👍6
Как закомментировать и раскомментировать строки кода

В будущем вы довольно часто будете сталкиваться с таким понятием, как «закомментированный код«. Это практика добавления символа # в начале вашего кода. Таким образом, можно на всякий случай убрать какой-то кусок кода, сделав его на данный момент нерабочим.
👍9
Узнаём версию Python

В пакете sys присутствует переменная version_info, которая хранит в себе версию Python, с помощью которого запущена программа.
👍2🔥1
Поиск классов Python

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

Вы можете вызвать функцию type() для любого объекта Python, чтобы узнать его класс. Например, класс массива numpy на самом деле называется ndarray (для n-мерного массива).
👍2
Перечисления

Перечисление (enumeration) — это набор имён, привязанных к уникальным неизменным значениям. Python поддерживает работу с перечислениями, с их помощью удобно хранить списки констант.

Члены одного перечисления можно сравнивать, а также обходить с помощью циклов. Подробнее о перечислениях можно почитать в документации: https://docs.python.org/3/library/enum.html
👍3❤1
Форматирование строк

Вставить переменную в строку можно несколькими способами. Проще всего использовать f-строки, с их помощью можно наглядно вставлять переменные в нужные места в фигурных скобках. Оператор % и метод format уже довольно устарели и использовать в новых проектах их не стоит.
👍7
Википедия

А как часто вы пользуетесь википедией? Если часто, то процесс поиска информации в ней можно немного упростить. За счёт официальной библиотеки, что так и называется Wikipedia, вы можете быстро находить информацию по разным ключевым словам.
👍17😱4🤔1
help()

Функция help() предоставляет простой способ получения доступа к документации Python без интернета для любой функции, ключевого слова или модуля.
👍8
Встроенная функция map

На вход принимает два аргумента — функцию (!) и объект, к элементам которого её надо применить. В примере мы применяем функцию, которая умножает число само на себя, к числам из списка.
👍2