Mypy
Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.
Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.
После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.
🔗 Python tricks
Mypy — это статический анализатор типов для Python. Он позволяет добавить статическую типизацию в Python и выявлять ошибки, связанные с типами, на этапе компиляции.
Для использования Mypy нужно аннотировать переменные специальным синтаксисом, в примере мы указали, что функция sum_list принимает список целых чисел и возвращает целое число.
После запуска, если типы не совпадают, Mypy выдаст ошибку, как показано в примере.
🔗 Python tricks
string.isspace
С помощью метода isspace() ты можешь узнать, все ли символы в строке являются пробельными символами. Если являются, возвращается True. Если же строка пустая или присутствует хотя бы один не пробельный символ, возвращается False.
🔗 Python tricks
С помощью метода isspace() ты можешь узнать, все ли символы в строке являются пробельными символами. Если являются, возвращается True. Если же строка пустая или присутствует хотя бы один не пробельный символ, возвращается False.
🔗 Python tricks
abs
Функция abs() возвращает абсолютное значение заданного числа. Под абсолютным значением подразумевается неотрицательное значение. В качестве числа может быть целое число, с плавающей запятой и комплексное число.
🔗 Python tricks
Функция abs() возвращает абсолютное значение заданного числа. Под абсолютным значением подразумевается неотрицательное значение. В качестве числа может быть целое число, с плавающей запятой и комплексное число.
🔗 Python tricks
Метод isspace()
Метод
Примечание:
🔗 Python tricks
Метод
isspace()
— это строковый метод, который используется для проверки, состоит ли строка только из пробельных символов (пробелов, символов табуляции, символов новой строки и других символов, которые считаются «пробельными» в контексте языка Python).Примечание:
isspace()
не изменяет исходную строку, а просто возвращает булево значение в зависимости от условия.🔗 Python tricks
Как найти подстроку?
Для поиска подстроки в Python с использованием оператора in, вам нужно просто использовать оператор
1. Создайте переменную, в которой будете искать подстроку (назовем ее
2. Создайте переменную, содержащую подстроку, которую вы хотите найти (назовем ее
3.Используйте оператор in для проверки наличия
Оператор
🔗 Python tricks
Для поиска подстроки в Python с использованием оператора in, вам нужно просто использовать оператор
in
в условном операторе (обычно внутри if
). Вот подробное объяснение шаг за шагом:1. Создайте переменную, в которой будете искать подстроку (назовем ее
main_string
).2. Создайте переменную, содержащую подстроку, которую вы хотите найти (назовем ее
sub_string
).3.Используйте оператор in для проверки наличия
sub_string
в main_string
внутри условного оператора if
. Если sub_string
найдена в main_string
, то условие if
будет выполняться, иначе оно не будет выполняться.Оператор
in
проверяет наличие подстроки внутри строки и не возвращает индекс, а просто булево значение True
или False
, которое показывает, найдена ли подстрока или нет.🔗 Python tricks
Как использовать строки для вызова функций/методов
Существует несколько приёмов.
Лучший - использование словаря, ставящего соответствие строке функцию. Его главное достоинство - строки не обязаны совпадать с названиями функций. Использование встроенной функции getattr. И использование locals или eval (не рекомендуется).
🔗 Python tricks
Существует несколько приёмов.
Лучший - использование словаря, ставящего соответствие строке функцию. Его главное достоинство - строки не обязаны совпадать с названиями функций. Использование встроенной функции getattr. И использование locals или eval (не рекомендуется).
🔗 Python tricks
Как удалить все символы новой строки в конце строки
Можно использовать
🔗 Python tricks
Можно использовать
S.rstrip("\r\n")
для удаления символов новой строки, без удаления конечных пробелов.🔗 Python tricks
Почему a_tuple[i] += ['item'] не работает, а добавление работает
Это из-за того, что расширенный оператор присваивания - оператор присваивания, а также из-за разницы между изменяемыми и неизменяемыми объектами в Python.
🔗 Python tricks
Это из-за того, что расширенный оператор присваивания - оператор присваивания, а также из-за разницы между изменяемыми и неизменяемыми объектами в Python.
🔗 Python tricks
Примечание для словаря (dict) (ч.1)
Для того, чтобы объект мог быть ключом словаря, он должен быть хешируем. У кортежа, возможен случай, когда его элемент является не хешируемым объектом, и соответственно сам кортеж тогда тоже не является хешируемым и не может выступать ключом словаря.
🔗 Python tricks
Для того, чтобы объект мог быть ключом словаря, он должен быть хешируем. У кортежа, возможен случай, когда его элемент является не хешируемым объектом, и соответственно сам кортеж тогда тоже не является хешируемым и не может выступать ключом словаря.
🔗 Python tricks
Завершение программы
exit() — это функция, которая позволяет завершить выполнение программы и возвратить код возврата операционной системе.
Принимает один необязательный числовой аргумент — код возврата программы. По умолчанию это 0, что означает успешное завершение, а код возврата отличный от нуля сигнализирует об ошибке или нештатной ситуации.
Используется для завершения программы в случае критической ошибки, когда продолжение работы невозможно и позволяет гибко управлять кодами возврата в зависимости от ситуации.
🔗 Python tricks
exit() — это функция, которая позволяет завершить выполнение программы и возвратить код возврата операционной системе.
Принимает один необязательный числовой аргумент — код возврата программы. По умолчанию это 0, что означает успешное завершение, а код возврата отличный от нуля сигнализирует об ошибке или нештатной ситуации.
Используется для завершения программы в случае критической ошибки, когда продолжение работы невозможно и позволяет гибко управлять кодами возврата в зависимости от ситуации.
🔗 Python tricks
Geopandas
Geopandas — это библиотека для работы с геопространственными данными. Она базируется на библиотеке Pandas и интегрируется с другими инструментами геоинформатики, такими как Shapely, Fiona, PyProj.
Geopandas позволяет эффективно работать с географическими данными в виде векторных и растровых слоев.
Основные области применения:
— Картография и визуализация пространственных данных.
— Анализ и обработка данных, содержащих географическую привязку.
— Работа с геометрическими объектами: точки, линии, полигоны.
— Преобразование и проектирование геоданных.
— Пространственный анализ и геостатистика.
— Моделирование географических процессов.
— ГИС-приложения и веб-картография.
🔗 Python tricks
Geopandas — это библиотека для работы с геопространственными данными. Она базируется на библиотеке Pandas и интегрируется с другими инструментами геоинформатики, такими как Shapely, Fiona, PyProj.
Geopandas позволяет эффективно работать с географическими данными в виде векторных и растровых слоев.
Основные области применения:
— Картография и визуализация пространственных данных.
— Анализ и обработка данных, содержащих географическую привязку.
— Работа с геометрическими объектами: точки, линии, полигоны.
— Преобразование и проектирование геоданных.
— Пространственный анализ и геостатистика.
— Моделирование географических процессов.
— ГИС-приложения и веб-картография.
🔗 Python tricks
Примечание для словаря (dict) (ч.2)
{} без значений создают словарь, а со значениями, в зависимости от синтаксиса могут создавать как множество, так и словарь.
🔗 Python tricks
{} без значений создают словарь, а со значениями, в зависимости от синтаксиса могут создавать как множество, так и словарь.
🔗 Python tricks
Проверка принадлежности элемента данной коллекции c помощью оператора in
x in s — вернет True, если элемент входит в коллекцию s и False — если не входит
Есть и вариант проверки не принадлежности: x not in s, где есть по сути, просто добавляется отрицание перед булевым значением предыдущего выражения.
🔗 Python tricks
x in s — вернет True, если элемент входит в коллекцию s и False — если не входит
Есть и вариант проверки не принадлежности: x not in s, где есть по сути, просто добавляется отрицание перед булевым значением предыдущего выражения.
🔗 Python tricks
functools.wraps
🔗 Python tricks
functools.wraps
— это декоратор (decorator), предоставляемый в стандартной библиотеке Python в модуле functools
. Он используется для оборачивания (wrapping) функций или методов, чтобы сохранить метаданные и атрибуты оригинальной функции, когда она передается другой функции в качестве аргумента или используется внутри другой функции.wraps
обычно используется в качестве декоратора внутри пользовательских декораторов. Без использования functools.wraps
, имя функции и её документацию было бы изменено на имя обернутой функции (wrapper
), и документацию из оригинальной функции можно было бы потерять.🔗 Python tricks
Подгенераторы
Подгенератор (subgenerator) — это функция-генератор, которая используется внутри другой функции-генератора. Он предоставляет часть логики или последовательность значений, которые могут быть использованы внутри более общего генератора. Подгенераторы полезны для организации кода и управления сложной логикой генераторов, разделяя ее на более мелкие, независимые части.
🔗 Python tricks
Подгенератор (subgenerator) — это функция-генератор, которая используется внутри другой функции-генератора. Он предоставляет часть логики или последовательность значений, которые могут быть использованы внутри более общего генератора. Подгенераторы полезны для организации кода и управления сложной логикой генераторов, разделяя ее на более мелкие, независимые части.
🔗 Python tricks
Метод count()
Метод
🔗 Python tricks
Метод
count()
в Python используется для подсчета количества вхождений заданного элемента (значения) в списке, кортеже или строке. Вот синтаксис этого метода:count(element)где
element
— это значение, которое вы хотите подсчитать в последовательности (списке, кортеже или строке).🔗 Python tricks
Обход всех элементов коллекции в цикле for in
В данном случае, в цикле будут последовательно перебираться элементы коллекции, пока не будут перебраны все из них.
🔗 Python tricks
В данном случае, в цикле будут последовательно перебираться элементы коллекции, пока не будут перебраны все из них.
🔗 Python tricks
Обработка элементов (ч.1)
Порядок обработки элементов для не индексированных коллекций будет не тот, как при их создании.
У прохода в цикле по словарю есть свои особенности.
При таком обходе словаря, перебираются только ключи равносильно for elm in my_dict.keys().
🔗 Python tricks
Порядок обработки элементов для не индексированных коллекций будет не тот, как при их создании.
У прохода в цикле по словарю есть свои особенности.
При таком обходе словаря, перебираются только ключи равносильно for elm in my_dict.keys().
🔗 Python tricks
Обработка элементов (ч.2)
При желании можно пройти только по значениям. Но чаще всего нужны пары ключ(key) — значение (value).
Проход по .items() возвращает кортеж (ключ, значение), который присваивается кортежу переменных key, value.
🔗 Python tricks
При желании можно пройти только по значениям. Но чаще всего нужны пары ключ(key) — значение (value).
Проход по .items() возвращает кортеж (ключ, значение), который присваивается кортежу переменных key, value.
🔗 Python tricks
Factory Boy
Factory Boy — это библиотека для тестирования в Python, которая предназначена для упрощения создания тестовых данных, таких как объекты базы данных.
Она позволяет создавать фабрики для объектов вашей модели, чтобы упростить процесс создания тестовых данных. Вы можете определить фабрику с атрибутами и значениями по умолчанию, которые будут использоваться при создании экземпляров модели. Затем вы можете использовать эти фабрики в ваших тестах, чтобы быстро и удобно создавать объекты для проверки функциональности вашего приложения.
🔗 Python tricks
Factory Boy — это библиотека для тестирования в Python, которая предназначена для упрощения создания тестовых данных, таких как объекты базы данных.
Она позволяет создавать фабрики для объектов вашей модели, чтобы упростить процесс создания тестовых данных. Вы можете определить фабрику с атрибутами и значениями по умолчанию, которые будут использоваться при создании экземпляров модели. Затем вы можете использовать эти фабрики в ваших тестах, чтобы быстро и удобно создавать объекты для проверки функциональности вашего приложения.
🔗 Python tricks