Python tricks | Хитрости Питона
5.08K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

Сотрудничество: @SIeep_Token

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
Быстрое объединение строк с помощью join()

Когда вам нужно объединить список строк в одну строку, вместо того чтобы использовать цикл и сложение строк, лучше применить метод join(). Это гораздо быстрее и эффективнее, особенно при работе с большими наборами данных.

Использование join() ускоряет процесс объединения строк и делает код лаконичнее и эффективнее.

🔗 Python tricks
Использование defaultdict для работы с частотами

Если вам нужно подсчитать частоту появления элементов в коллекции (например, в списке), вы можете использовать defaultdict из модуля collections. Это позволяет избежать необходимости предварительно проверять, существует ли ключ в словаре, что упрощает код.

Использование defaultdict значительно упрощает задачу подсчета частот и позволяет писать более чистый и понятный код.

🔗 Python tricks
Использование itertools.groupby для группировки данных

Если у вас есть список данных, и вы хотите сгруппировать его по определенному критерию, вы можете использовать функцию groupby из модуля itertools. Это позволяет удобно собирать элементы, относящиеся к одной категории, в одну группу.

Использование itertools.groupby позволяет легко и эффективно организовать данные, что упрощает последующую обработку и анализ.

🔗 Python tricks
Использование enumerate для индексации элементов

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

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

🔗 Python tricks
Использование defaultdict из модуля collections для упрощения работы со словарями

defaultdict — это специальный тип словаря в Python, который позволяет вам устанавливать значение по умолчанию для ключей, которые ещё не существуют в словаре. Это особенно полезно, когда вам нужно собирать данные в виде групп или подсчитывать количество элементов.

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

🔗 Python tricks
Использование with для работы с файлами

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

Использование конструкции with для работы с файлами – это стандартная практика, которая помогает поддерживать код в чистоте и минимизировать ошибки, связанные с управлением ресурсами.

🔗 Python tricks
Для чего используется kwargs в Python?

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

🔗 Python tricks
Использование *args и **kwargs при вызове функции

Мы также можем использовать *args и **kwargs для передачи аргументов в функции.

🔗 Python tricks
Использование defaultdict из модуля collections для упрощения работы со словарями

defaultdict — это специальный тип словаря в Python, который позволяет вам устанавливать значение по умолчанию для ключей, которые ещё не существуют в словаре. Это особенно полезно, когда вам нужно собирать данные в виде групп или подсчитывать количество элементов.

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

🔗 Python tricks
Использование Counter из модуля collections для подсчета элементов

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

Counter — это эффективный инструмент для анализа данных и решения задач, связанных с подсчетом частоты появления элементов.

🔗 Python tricks
Быстрое объединение строк с помощью метода .join()

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

Использование .join() делает процесс объединения строк более лаконичным и производительным, что особенно важно при работе с большими объемами текстовых данных.

🔗 Python tricks
Быстрое объединение строк с помощью метода .join()

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

Использование .join() делает процесс объединения строк более лаконичным и производительным, что особенно важно при работе с большими объемами текстовых данных.

🔗 Python tricks
Использование тернарного оператора для упрощения условий

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

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

🔗 Python tricks
Использование оператора «:=» (моржовый оператор) для одновременного присваивания и проверки

Моржовый оператор :=, представленный в Python 3.8, позволяет выполнять присваивание внутри выражений. Это полезно, когда вам нужно одновременно присвоить значение переменной и использовать его в условии, что сокращает код и делает его более эффективным.

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

🔗 Python tricks
Использование метода .get() для безопасного доступа к значениям словаря

Метод .get() позволяет безопасно получать значения из словаря в Python. Вместо того чтобы вызывать ключ напрямую и рисковать выбросом ошибки KeyError, если ключ не существует, .get() возвращает None или указанное значение по умолчанию.

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

🔗 Python tricks
Использование функции zip() для параллельной итерации по нескольким спискам

Функция zip() позволяет объединять несколько списков и одновременно итерироваться по ним в цикле. Это удобно, когда нужно обработать данные из нескольких коллекций синхронно.

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

🔗 Python tricks
Списковые включения (List Comprehensions) для создания списков в одну строку

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

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

🔗 Python tricks
Использование оператора _ для повторного использования результата последней операции в интерактивном режиме

В Python при работе в интерактивной оболочке (например, в REPL или Jupyter Notebook) можно использовать символ подчеркивания _, чтобы получить результат последнего выражения. Это упрощает работу с вычислениями, когда нужно быстро использовать предыдущий результат.

Использование оператора _ в интерактивной оболочке ускоряет доступ к предыдущим результатам и делает работу с вычислениями более удобной и быстрой.

🔗 Python tricks
Библиотека Typer

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

Основные возможности Typer:
— Декоратор @typer.command() для определения команд и подкоманд.
— Автоматический парсинг аргументов и опций.
— Валидация и tipped annotations для аргументов и опций.
— Автоматическая генерация help с описаниями.
— Встроенная поддержка Click для обратной совместимости.

Typer часто используется для создания утилит командной строки, CLI интерфейсов для python приложений, API клиентов, DevOps инструментов и других задач, где нужен простой и удобный интерфейс командной строки.

🔗 Python tricks
Функция sorted

sorted() используется для сортировки элементов в списке, кортеже или другой последовательности.
Она возвращает новый отсортированный список или итератор, не изменяя исходную последовательность.

По умолчанию сортировка выполняется в возрастающем порядке. Для сортировки в убывающем порядке нужно указать аргумент reverse=True.
Для сортировки по определенному ключу можно использовать ключевой аргумент key. Он принимает функцию, которая извлекает ключ для сортировки из каждого элемента.

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

🔗 Python tricks