Использование f-строк для форматирования строк
С версии Python 3.6 в языке появились так называемые f-строки (или формируемые строки), которые позволяют более удобным и читаемым образом форматировать строки. Это особенно полезно, когда вам нужно вставить переменные или выражения прямо в строку.
Использование f-строк упрощает процесс создания строк с динамическими данными и делает код более интуитивно понятным.
🔗 Python tricks
С версии Python 3.6 в языке появились так называемые f-строки (или формируемые строки), которые позволяют более удобным и читаемым образом форматировать строки. Это особенно полезно, когда вам нужно вставить переменные или выражения прямо в строку.
Использование f-строк упрощает процесс создания строк с динамическими данными и делает код более интуитивно понятным.
🔗 Python tricks
Метод Counter.elements()
Метод Counter.elements() возвращает итератор по элементам в словаре Counter.
Этот метод позволяет эффективно перебрать элементы словаря
Как видно из примера, метод
Это позволяет эффективно обрабатывать элементы, не создавая промежуточные структуры данных.
🔗 Python tricks
Метод Counter.elements() возвращает итератор по элементам в словаре Counter.
Этот метод позволяет эффективно перебрать элементы словаря
Counter без создания копии.Как видно из примера, метод
elements() возвращает итератор по элементам словаря Counter в порядке их добавления. Это позволяет эффективно обрабатывать элементы, не создавая промежуточные структуры данных.
🔗 Python tricks
Библиотека igraph
igraph предназначена для работы с графами и сетями. Она позволяет строить, анализировать и визуализировать графы.
Основные возможности
🔗 Python tricks
igraph предназначена для работы с графами и сетями. Она позволяет строить, анализировать и визуализировать графы.
Igraph часто используется при анализе социальных сетей, изучении структуры больших сетей (например, ссылок в интернете), в биоинформатике для анализа взаимодействий белков и других задач, связанных с теорией графов. Основные возможности
igraph — генерация случайных и классических графов, вычисление различных метрик (степени вершин, диаметра графа и т. д.), поиск сообществ и кластеров.🔗 Python tricks
Библиотека xarray
xarray предназначена для работы с многомерными данными и массивами.
Она позволяет удобно хранить и обрабатывать данные с метаданными, такими как координаты, время и другие измерения.
Основные преимущества
В этом примере создана
🔗 Python tricks
xarray предназначена для работы с многомерными данными и массивами.
Она позволяет удобно хранить и обрабатывать данные с метаданными, такими как координаты, время и другие измерения.
Xarray часто используется в научных вычислениях и анализе данных, особенно при работе с геопространственными данными, временными рядами, метеоданными и другой многомерной информацией. Основные преимущества
xarray — это возможность помечать оси данных и выполнять операции по этим осям, легкость совместного использования данных и метаданных.В этом примере создана
DataArray со случайными данными размерностей 2x3. Для осей заданы метки "city" и "year". Это позволяет легко обращаться к данным по городам и годам. Xarray сохраняет метаданные вместе с данными.🔗 Python tricks
Метод isspace()
Метод isspace() проверяет, является ли символ пробельным.
Пробельными символами считаются:
— Пробел (
— Табуляция (
— Перевод строки (
— Перевод каретки (
— Прочие unicode символы, определяемые как пробелы.
Этот метод удобно использовать для проверки и обработки строк.
🔗 Python tricks
Метод isspace() проверяет, является ли символ пробельным.
Пробельными символами считаются:
— Пробел (
' ').— Табуляция (
'\t').— Перевод строки (
'\n').— Перевод каретки (
'\r').— Прочие unicode символы, определяемые как пробелы.
isspace() возвращает True, если символ пробельный, и False в противном случае.Этот метод удобно использовать для проверки и обработки строк.
🔗 Python tricks
collections.Counter
Collections.Counter — это класс, предназначенный для подсчета хешей (hashable объектов).
Он позволяет удобно и эффективно подсчитывать вхождения элементов в какой-либо последовательности.
Основное отличие
Основные способы использования
— Подсчет слов или букв в тексте.
— Подсчет появления элементов в списке или итераторе.
— Нахождение наиболее часто встречающихся элементов.
— Использование при решении задач на вероятность и статистику.
🔗 Python tricks
Collections.Counter — это класс, предназначенный для подсчета хешей (hashable объектов).
Он позволяет удобно и эффективно подсчитывать вхождения элементов в какой-либо последовательности.
Основное отличие
Counter от обычного словаря в том, что он не выбрасывает исключение, если ключ не существует, а просто создает новый ключ со значением 0. Это упрощает подсчет элементов.Counter может принимать на вход любую итерируемую последовательность (список, кортеж и т.д.).Основные способы использования
Counter:— Подсчет слов или букв в тексте.
— Подсчет появления элементов в списке или итераторе.
— Нахождение наиболее часто встречающихся элементов.
— Использование при решении задач на вероятность и статистику.
🔗 Python tricks
collections.MutableMapping
Collections.MutableMapping — это интерфейс, который представляет изменяемое отображение (словарь).
Он наследуется от интерфейса
Основное преимущество в использовании
Например, во многих функциях в стандартной библиотеке есть параметры типа
🔗 Python tricks
Collections.MutableMapping — это интерфейс, который представляет изменяемое отображение (словарь).
Он наследуется от интерфейса
Mapping и добавляет методы для изменения отображения, такие как __setitem__, __delitem__ и clear. Основное преимущество в использовании
MutableMapping — это возможность передавать экземпляры такого класса в любое API, ожидающее словарь. Например, во многих функциях в стандартной библиотеке есть параметры типа
dict. Если создать класс, реализующий MutableMapping, его экземпляры можно будет передавать в такие функции.🔗 Python tricks
Выход пользователя из профиля на Django
Пользователь успешно прошел процедуру аутентификации, но… как теперь выйти? Можно было бы зайти в админку и выйти оттуда, однако есть способ получше. Добавим ссылку выхода, которая будет перенаправлять человека на домашнюю страницу. Благодаря системе аутентификации Django, добиться такого сценария проще простого.
В файле шаблона base.html добавим ссылку {% url 'logout' %} для выхода сразу после приветствия пользователя.
🔗 Python tricks
Пользователь успешно прошел процедуру аутентификации, но… как теперь выйти? Можно было бы зайти в админку и выйти оттуда, однако есть способ получше. Добавим ссылку выхода, которая будет перенаправлять человека на домашнюю страницу. Благодаря системе аутентификации Django, добиться такого сценария проще простого.
В файле шаблона base.html добавим ссылку {% url 'logout' %} для выхода сразу после приветствия пользователя.
🔗 Python tricks
Резюме статьи
Gensim — отличный пакет Python для большого количества задач нейролингвистического программирования (НЛП). Он включает в себя довольно надежную функцию резюмирования, которой достаточно легко пользоваться. Она реализует разновидность алгоритма TextRank.
Для использования этой функции нам нужна лишь одна строчка кода
🔗 Python tricks
Gensim — отличный пакет Python для большого количества задач нейролингвистического программирования (НЛП). Он включает в себя довольно надежную функцию резюмирования, которой достаточно легко пользоваться. Она реализует разновидность алгоритма TextRank.
Для использования этой функции нам нужна лишь одна строчка кода
🔗 Python tricks
Потребление памяти при сортировке в Python
Сначала сравним, сколько памяти потребляет каждая из функций. Для отслеживания максимального использования памяти, используем встроенный модуль resource. Так как данный модуль позволяет отслеживать использование памяти для одного потока, мы запускаем сортировку списка в отдельном потоке. Также можно использовать FunctionSniffingClass, включенный в репозитории.
🔗 Python tricks
Сначала сравним, сколько памяти потребляет каждая из функций. Для отслеживания максимального использования памяти, используем встроенный модуль resource. Так как данный модуль позволяет отслеживать использование памяти для одного потока, мы запускаем сортировку списка в отдельном потоке. Также можно использовать FunctionSniffingClass, включенный в репозитории.
🔗 Python tricks
List и Tuple — зачем нужны и какие отличия
List и Tuple — это два основных типа данных для хранения последовательностей.
List (список) — изменяемый тип данных, можно добавлять, удалять и изменять элементы.
Tuple (кортеж) — неизменяемый тип данных, элементы нельзя изменить после создания.
Основные отличия:
- Списки изменяемые, кортежи - нет;
- Списки удобнее для добавления/удаления элементов;
- Кортежи более эффективны по памяти и быстрее для доступа к элементам.
Для хранения постоянных данных лучше использовать кортежи, а для изменяемых данных — списки.
🔗 Python tricks
List и Tuple — это два основных типа данных для хранения последовательностей.
List (список) — изменяемый тип данных, можно добавлять, удалять и изменять элементы.
Tuple (кортеж) — неизменяемый тип данных, элементы нельзя изменить после создания.
Основные отличия:
- Списки изменяемые, кортежи - нет;
- Списки удобнее для добавления/удаления элементов;
- Кортежи более эффективны по памяти и быстрее для доступа к элементам.
Для хранения постоянных данных лучше использовать кортежи, а для изменяемых данных — списки.
🔗 Python tricks
Дан целочисленный массив nums, вернуть [nums[i], nums[j], nums[k]] такие, что nums[i] + nums[j] + nums[k] == 0.
В нашем решении сначала список nums сортируется. Затем перебираются все возможные комбинации индексов i, j и k. Их сумма проверяется на равенство target и добавляется в результирующий сет, если равна.
🔗 Python tricks
В нашем решении сначала список nums сортируется. Затем перебираются все возможные комбинации индексов i, j и k. Их сумма проверяется на равенство target и добавляется в результирующий сет, если равна.
🔗 Python tricks
Mypy
Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.
Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.
После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.
🔗 Python tricks
Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.
Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.
После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.
🔗 Python tricks
MongoDB: Find
В MongoDB ты можешь использовать методы find() и find one() для поиска данных в коллекции. Точно так же, как оператор SELECT используется для поиска данных в таблице базы данных MySQL. Метод find one() возвращает первое вхождение в выборке. Метод find() возвращает все вхождения в выборке.
🔗 Python tricks
В MongoDB ты можешь использовать методы find() и find one() для поиска данных в коллекции. Точно так же, как оператор SELECT используется для поиска данных в таблице базы данных MySQL. Метод find one() возвращает первое вхождение в выборке. Метод find() возвращает все вхождения в выборке.
🔗 Python tricks
Потребление памяти при сортировке в Python
Сначала сравним, сколько памяти потребляет каждая из функций. Для отслеживания максимального использования памяти, используем встроенный модуль resource. Так как данный модуль позволяет отслеживать использование памяти для одного потока, мы запускаем сортировку списка в отдельном потоке. Также можно использовать FunctionSniffingClass, включенный в репозитории.
🔗 Python tricks
Сначала сравним, сколько памяти потребляет каждая из функций. Для отслеживания максимального использования памяти, используем встроенный модуль resource. Так как данный модуль позволяет отслеживать использование памяти для одного потока, мы запускаем сортировку списка в отдельном потоке. Также можно использовать FunctionSniffingClass, включенный в репозитории.
🔗 Python tricks
Использование тернарного оператора для компактных условий
В Python можно использовать тернарный оператор для написания условных выражений в одну строку, что делает код более кратким и читаемым. Это полезно, когда нужно вернуть значение на основе простого условия.
Тернарный оператор удобен для ситуаций, когда вам нужно написать небольшое условие без использования многострочных блоков if-else, улучшая читаемость кода.
🔗 Python tricks
В Python можно использовать тернарный оператор для написания условных выражений в одну строку, что делает код более кратким и читаемым. Это полезно, когда нужно вернуть значение на основе простого условия.
Тернарный оператор удобен для ситуаций, когда вам нужно написать небольшое условие без использования многострочных блоков if-else, улучшая читаемость кода.
🔗 Python tricks
Использование списка включений (list comprehension) для фильтрации и трансформации данных
Списки включений (list comprehension) позволяют быстро и лаконично создавать новые списки на основе существующих, применяя фильтрацию и трансформацию данных в одной строке. Это полезно для оптимизации кода, который требует создания новых списков по определённым условиям.
Использование списков включений делает код более лаконичным, понятным и оптимизированным для выполнения операций над списками.
🔗 Python tricks
Списки включений (list comprehension) позволяют быстро и лаконично создавать новые списки на основе существующих, применяя фильтрацию и трансформацию данных в одной строке. Это полезно для оптимизации кода, который требует создания новых списков по определённым условиям.
Использование списков включений делает код более лаконичным, понятным и оптимизированным для выполнения операций над списками.
🔗 Python tricks
Уже завтра вечером в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
Использование метода get() для безопасного доступа к значениям словаря
При работе со словарями (dict) в Python, иногда нужно получить значение по ключу, который может отсутствовать. Вместо того чтобы проверять наличие ключа с помощью условия if, можно использовать метод get(), который возвращает значение по ключу, или значение по умолчанию, если ключа нет.
Использование метода get() позволяет избежать ошибок при работе с отсутствующими ключами и сделать код более чистым и удобным.
🔗 Python tricks
При работе со словарями (dict) в Python, иногда нужно получить значение по ключу, который может отсутствовать. Вместо того чтобы проверять наличие ключа с помощью условия if, можно использовать метод get(), который возвращает значение по ключу, или значение по умолчанию, если ключа нет.
Использование метода get() позволяет избежать ошибок при работе с отсутствующими ключами и сделать код более чистым и удобным.
🔗 Python tricks
Использование zip() для одновременной итерации по нескольким спискам
Функция zip() позволяет одновременно перебирать несколько списков в Python, что удобно, когда нужно работать с несколькими последовательностями одинаковой длины. Это позволяет избежать использования индексов и делает код более читаемым.
Использование zip() — это быстрый и удобный способ параллельной обработки нескольких списков, который помогает сделать код проще и аккуратнее.
🔗 Python tricks
Функция zip() позволяет одновременно перебирать несколько списков в Python, что удобно, когда нужно работать с несколькими последовательностями одинаковой длины. Это позволяет избежать использования индексов и делает код более читаемым.
Использование zip() — это быстрый и удобный способ параллельной обработки нескольких списков, который помогает сделать код проще и аккуратнее.
🔗 Python tricks