Telegram Web
distance

Существует полезный класс — distance. Он определяет расстояние между двумя точками в ваших любимых единицах измерения.
Группировка смежных списков

Группировку смежных списков, разумеется, легко осуществить в цикле for, особенно, используя zip(), но это далеко не самый лучший способ. Чтобы сделать это проще и быстрее, напишем лямбда-выражение с zip, которое сгруппирует смежные списки
Итерация next() для генераторов

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

Однако вместо этого можно использовать next(). Next берёт итератор, который будет хранить текущую позицию в памяти и перебирать список в фоновом режиме.
Исключение из очереди

Класс collections.deque() это обобщение стеков и очередей и представляет собой двустороннюю очередь. Двусторонняя очередь deque() поддерживает поточно-ориентированные, эффективные по памяти операции добавления и извлечения элементов последовательности с любой стороны с примерно одинаковой производительностью O(1) в любом направлении.
Длина строки в байтах

Метод для определения длины строки в байтах. Это не то же самое, что размер объекта.

Байтовый размер объекта-строки в памяти всегда больше байтовой длины строки, поскольку объект-строка содержит и саму строку, и дополнительную информацию о ней — например, ссылки на методы строк.
Сжатие списка

Этот скрипт удаляет «ложные» значения (False, None, 0 и пустую строку ' ') из списка. Используется встроенная функция filter(): c параметром None на первом месте она удалит из списка lst все значения, которые не вернут True по умолчанию.

Проверить вручную какое-либо значение на True/False можно с помощью функции bool(): bool(0) вернёт False, но bool('0') уже будет True, так как это непустая строка.
Транспонирование матрицы

В простейшем случае двумерная матрица может быть задана списком из нескольких списков одинаковой длины, которые представляют собой строки матрицы. Если вам требуется «повернуть на 90 градусов» такую матрицу или превратить строки в столбцы (транспонировать, как говорят математики)

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

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

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

Этот короткий скрипт вернёт элемент, чаще всего встречающийся в списке.

Используются продвинутые параметры встроенной функции max():

• первым аргументом она получает множество из элементов списка (помним, что в множестве все элементы уникальны);
• затем применяет к каждому из них функцию count, подсчитывающую, сколько раз элемент встречается в списке;
• после этого возвращает элемент множества, который имеет больше всего «попаданий».

В качестве аргумента можно использовать списки, кортежи и строки.
Проверка строки на палиндром

Простой вариант этого кода проверяет, является ли слово без пробелов и знаков препинания, написанное в одном регистре, палиндромом.

Более сложный вариант, который сможет проверить строку «А роза упала на лапу Азора», предлагаем написать самостоятельно. Общая идея: свести сложную строку к простой, хоть и длинной 'арозаупаланалапуазора'. Вам пригодятся функции строк .lower(), .join(), а также, возможно, преобразование строки в список.
Перемешать элементы списка

Этот сниппет поможет вам изменить порядок элементов списка на случайный. Обратите внимание на то, что функция shuffle из библиотеки random меняет исходный список.
Число в список цифр

Превращает целое число в список его цифр.

Функция map() принимает желаемый тип выходных данных (в нашем случае это int, целые числа) и итерируемый объект (строку, список или кортеж), элементы которого можно превратить в элементы этого типа. После этого другая функция list() преобразует результат в список.
Первая буква в верхнем регистре

Этот пример используется для превращения каждой первой буквы символов строки в прописную букву. Он работает со строкой из одного или нескольких символов и будет полезен при анализе текста или записи данных в файл и т.п.
Печать строки N раз

Этот пример может печатать любую строку n раз без использования циклов Python.
Преобразование разделённого запятыми списка в строку

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

Мы знаем, что функция print выполняет вывод в каждой строке, и если использовать две функции print, они выполнят печать в две строки. Этот пример покажет, как выполнять вывод в той же строке без перехода на новую.
Выражения присваивания (Assignment expressions)
Python 3.8

Так же известные как «моржовый оператор» (walrus operator) — новый синтаксис, который позволит присваивать значения переменным внутри другого выражения. Это, наверное, самое известное и обсуждаемое из нововведений версии 3.8.

Целью введения оператора является повышение читаемости кода, поэтому использовать его (как и все остальные операторы) стоит не при первой же возможности, а только тогда, когда это уместно.
Вычисляем время выполнения

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

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

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

Неизменяемые данные, в противоположность изменяемым, после создания остаются неизменными. Посмотрите, как можно преобразовать изменяемый тип данных в неизменяемый.
2025/07/09 02:31:13
Back to Top
HTML Embed Code: