PYTHON ONLINE
402 subscribers
1 photo
52 links
PYTHON для начинающих
Download Telegram
Контейнер deque.

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

Помимо этого, контейнер deque позволяет обеспечить линейную сложность O(1) для операций добавления и выталкивания по сравнению со стандартным списком, у которого сложность по времени для тех же операций составляет O(n).

А еще deque имеет возможность использовать такие стандартные функции, как sum, min, max и другие.
Функция findall()

При необходимости найти все вхождения, в дело идет функция findall().

Синтаксис: findall(pattern, string, flags=0[optional])

В случае успеха функция возвращает список, в котором в виде строк содержатся все искомые вхождения по порядку. При этом, если вхождений нет, то эта функция возвратит пустой список.
Метод float.hex.

Данный метод позволит вам предоставить число с плавающей запятой в виде шестнадцатеричной строки. Так, для конечных чисел с плавающей запятой данное представление всегда будет включать начальный 0x и конечный p и показатель степени.

Шестнадцатеричные строки обеспечивают точное представление и спецификацию чисел с плавающей запятой.
lambda функции с условием.

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

Но таким образом, можно лаконично упаковывать множество простых алгоритмов.
Как создать утилиту для генерации пароля?

Для наших целей мы будем использовать символы из пакета String. Собираем ascii буквы и цифры. После чего выбираем из них случайные для необходимой длинны пароля.

Будет полезно как для личного использования, так и для личного использования.
Numpy "Базовые операции"

В библиотеке Numpy весьма просто реализованы простейшие операции: сложение, вычитание, умножение и деление. Единственное, что для выполнения операций необходимо, чтобы массивы были одинаковыми.

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

А еще можно найти математические операции, такие как: синус, косинус и подобные.
Регулярные выражения.

Регулярные выражения (REGEX), представляют собой более гибкий способ нахождения подстрок в строках. В Python имеется встроенный модуль, который позволяет работать с регулярными выражениями, — re. Модуль re содержит функцию search, которая позволит вам найти подстроку.

При необходимости сложных сопоставлений, к примеру, учет регистра, данный метод подойдет вам лучше всего. При этом, у него имеются и недостатки, такие как: сложность и скорость работы. Поэтому в простеньких задачах его лучше не использовать.
Копируем объекты.

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

А вот если использовать copy.deepcopy(), то получатся "настоящие" копии объекта и всех его ссылок.
Как получить текущее имя пользователя в Python?

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

А вот метод os.getlogin() в Python позволит вам получить имя пользователя, вошедшего в систему на управляющем терминале процесса.
Бесконечный итератор.

Функция cycle() из модуля itertools принимает на вход итерируемый объект и создает бесконечный итератор, который циклически возвращает элементы данного объекта.

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

Но при работе с циклом по такому итератору, важно предусмотреть выход из цикла, иначе цикл станет бесконечным.

Можно также воспользоваться islice(), который вернет итератор по подмножеству переданного объекта.
Метод Counter.most_common()

С помощью данного метода можно возвратить список из n наиболее распространенных элементов и их количество от наиболее распространенных до наименее. Если n опущено или None, метод cnt.most_common() возвратит все элементы в счетчике.

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

Данный трюк, по сути, не намного лучше, чем использование оператора %, но иногда он действительно эффективен (с большими числами).

К примеру:
k = 3
Двоичный: «11 & 1» будет 001, поэтому число нечетное
k = 4
Двоичный: «100 & 1» будет 000, поэтому число четное.
Наборы символов

В стандартной библиотеке можно найти множество интересных вещей. Сегодня мы с вами поговорим об одной из них.

В пакете string можно получить получить наборы символов по заданному параметру. По своей сути, это уже готовые строки, для формирования пароля или шифрования.
Как проверить строки на анаграммность?

Для поверки строк на анаграммность, (к примеру, в следствии случайной перестановки букв) можно использовать класс Counter модуля collections.
Метод geopy.

Иногда программистам сложно ориентироваться в географии. Для подобных ситуаций существует модуль geopy:

 pip install geopy

Его работа осуществляется путём абстрагирования API разных сервисов геокодирования. Так, данный модуль позволяет узнать полный адрес места, его долготу, широту и даже высоту.

Помимо этого, в нем имеется полезный класс Distance. Он высчитывает расстояние между двумя местами в удобной единице измерения.
Класс defaultdict

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

Для более полного ознакомления с классом defaultdict можно перейти по ссылке → ТЫК ←.
Метод Counter.most_common()

С помощью данного метода можно возвратить список из n наиболее распространенных элементов и их количество от наиболее распространенных до наименее. Если n опущено или None, метод cnt.most_common() возвратит все элементы в счетчике.

При этом элементы с равным количеством будут упорядочены в порядке, в котором они встречаются первыми.
Конвертируем из JPG в PNG с помощью Pillow

Чтобы конвертировать, нам нужно открыть изображение и просто сохранить его в другом формате.

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

Для этого можно использовать умножение (*) со строками или списками; умножать их можно любое количество раз.

Одним из самых интересных вариантов может быть определение списка с постоянным значением, к примеру ноль.
Удаление несколько элементов из списка.

С помощью методов remove() и pop() можно удалить только один элемент, а вот для удаления нескольких элементов используется метод del.

К примеру, из списка ['A', 'B', 'C', 'D', 'E', 'F'] нужно удалить элементы B, C и D. Как раз данная операция будет осуществляться с помощью del.
Как вставить одно изображение в другое с помощью Pillow?

Метод paste() из библиотеки Pillow, дает возможность вставить одно изображение в другое.

При этом, по умолчанию изображение вставляется в верхней левой части фоновой картинки.

Для получения более подробной информации можно перейти по ссылке → ТЫК ←.