Функция abs() для получения модуля числа
Встроенная функция abs(x) в Python возвращает абсолютное значение аргумента x, который может быть целым или числом с плавающей точкой, или же объектом, реализующим функцию __abs__() . Для комплексных чисел функция возвращает их величину. Абсолютное значение любого числового значения -x или +x — это всегда соответствующее положительное +x.
| Аргумент | x | целое число, число с плавающей точкой, комплексное число, объект, реализующий __abs__() |
| Возвращаемое значение |
|x| | возвращает абсолютное значение входящего аргумента |
Пример abs() с целым числом
Следующий код демонстрирует, как получить абсолютное значение 42 положительного числа 42.
x = 42 abs_x = abs(x) print(f"Абсолютное значение это ") # Вывод: Абсолютное значение 42 это 42Вывод: «Абсолютное значение 42 это 42».
То же самое, но уже с отрицательным -42.
x = -42 abs_x = abs(x) print(f"Абсолютное значение это ") # Вывод: Абсолютное значение -42 это 42Пример с числом float
Вот как получить абсолютное значение 42.42 и для -42.42:
x = 42.42 abs_x = abs(x) print(f"Абсолютное значение это ") # Абсолютное значение 42.42 это 42.42 x = -42.42 abs_x = abs(x) print(f"Абсолютное значение это ") # Абсолютное значение -42.42 это 42.42Комплексное число
Абсолютное значение комплексного числа (3+10j).
complex_number = (3+10j) abs_complex_number = abs(complex_number) print(f"Абсолютное значение это ") # Абсолютное значение (3+10j) это 10.44030650891055abs() vs fabs()
abs(x) вычисляет абсолютное значение аргумента x . По аналогии функция fabs(x) модуля math вычисляет то же значение. Разница лишь в том, что math.fabs(x) возвращает число с плавающей точкой, а abs(x) вернет целое число, если в качестве аргумента было целое число. Fabs расшифровывается как float absolute value.
x = 42 print(abs(x)) # 42 import math print(math.fabs(x)) # 42.0abs() vs. np.abs()
И abs() в Python, и np.abs() в NumPy вычисляют абсолютное значение числа, но есть два отличия. np.abs(x) всегда возвращает число с плавающей точкой. Также np.abs(x) принимает массив NumPy, вычисляя значение для каждого элемента коллекции.
x = 42 print(abs(x)) # 42 import numpy as np print(np.fabs(x)) # 42.0 a = np.array([-1, 2, -4]) print(np.abs(a)) # [1 2 4]abs и np.abs абсолютно идентичны. Нет разницы какой использовать. У первой преимущество лишь в том, что ее вызов короче.
Вывод
Функция abs() — это встроенная функция, возвращающая абсолютное значение числа. Она принимает целые, с плавающей точкой и комплексные числа на вход.
Если передать в abs() целое число или число с плавающей точкой, то функция вернет не-отрицательное значение n и сохранит тип. Для целого числа — целое число. Для числа с плавающей точкой — число с плавающей точкой.
>>> abs(20) 20 >>> abs(20.0) 20.0 >>> abs(-20.0) 20.0Комплексные числа состоят из двух частей и могут быть записаны в форме a + bj, где a и b — это или целые числа, или числа с плавающей точкой. Абсолютное значение a + bj вычисляется математически как math.sqrt(a**2 + b**2).
>>> abs(3 + 4j) 5.0 >>> math.sqrt(3**2 + 4**2) 5.0Таким образом, результат всегда положительный и всегда является числом с плавающей точкой.
Я создал этот блог в 2018 году, чтобы распространять полезные учебные материалы, документации и уроки на русском. На сайте опубликовано множество статей по основам python и библиотекам, уроков для начинающих и примеров написания программ.
Мои контакты: Почта
Python Q https://yandex.ru/q/loves/python Online
Python Q CEO Pythonru admin@pythonru.com https://secure.gravatar.com/avatar/b16f253879f7349f64830c64d1da4415?s=96&d=mm&r=g CEO Pythonru Python Александр Редактор https://t.me/cashncarryhttps://pythonru.com/https://yandex.ru/q/profile/cashnc/ PythonRu.com admin@pythonru.com Alex Zabrodin 2018-10-26 Online Python, Programming, HTML, CSS, JavaScript
Функция Abs
Возвращает значение передаваемого ему типа с указанием абсолютного значения числа.
Синтаксис
Abs(number)
Обязательный аргумент number может быть любым допустимым числовым выражением. Если number содержит Null, возвращается Null; если это неинициализированная переменная, возвращается нулевое значение.
Замечания
Абсолютное значение числа — это его беззнаковая величина. Например, ABS(-1) и ABS(1) оба возвращают . 1
Пример
В этом примере функция Abs используется для вычисления абсолютного значения числа.
Dim MyNumber MyNumber = Abs(50.3) ' Returns 50.3. MyNumber = Abs(-50.3) ' Returns 50.3.См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Обратная связь
Были ли сведения на этой странице полезными?
Обратная связь
Отправить и просмотреть отзыв по
Модуль числа в Python
Очень часто возникает необходимость вычисления модуля числа в Python. Рассмотрим, что такое модуль числа, какие есть способы его вычисления. Так же отдельно коснемся комплексных чисел.
Модуль числа
Часто в программировании требуется вычислить абсолютное значение числа. Иначе говоря, отбросить знак.
При вычислении модуля возможны 3 ситуации:
- Когда число больше 0. Если взять его по модулю — не изменится.
- Модуль нуля так же равен нулю.
- У отрицательного числа отбрасываем знак. То есть умножаем его на -1.
Но это все справедливо только для действительных чисел. Чему же тогда будет равен модуль комплексных?
Комплексное число состоит из действительной составляющей и мнимой. Геометрически это можно представить как 2 ортогональные оси: действительную и мнимую. Отмечаем на координатных осях требуемую точку. Модулем будет длина отрезка, проведенного из начала координат в эту точку.

Исходя из теоремы Пифагора получаем, что модуль комплексного числа это корень квадратный из суммы квадратов мнимой и действительной частей.
Вычисление
Вычислять модуль можно следующими способами:
- Используя стандартную функцию abs.
- С помощью функции fabs библиотеки math.
- При помощи самостоятельно написанной функции.
Все эти функции работают как в Python 2, так и в Python 3.
abs
Для вычисления в Python модуля числа используется функция abs. Результат функции того же типа, которого был аргумент.
a = -10 b = abs(a) print(b) print(type(b)) 10
fabs
Можно так же воспользоваться функцией fabs из библиотеки math. Библиотеку можно подключить с помощью from math import fabs .
from math import fabs a = -10 b = fabs(a) print(b) print(type(b)) 10.0
Отличие abs от fabs заключается в том, что функция abs возвращает значение того же типа, что и аргумент. Функция же fabs вначале преобразует тип аргумента к вещественному числу.
Свое решение
Если по каким то причинам нет возможности или желания использовать стандартные функции, то можно написать свое решение.
Например, можно вычислить воспользоваться тернарным оператором.
a = -10 b = a if a > 0 else -a print(b) 10
На основе такого условия сделаем свою функцию.
def my_abs(a): return a if a > 0 else -a print(my_abs(-3)) 3
Модуль комплексного числа
Мы разобрались как происходит вычисление с действительными числами. Теперь посмотрим, как в языке программирования Python можно получить модуль комплексного.
Функцией fabs мы не сможем воспользоваться. Если попытаемся это сделать, то получим ошибку приведения комплексного числа к действительному (TypeError).
from math import fabs a = -10-2j b = fabs(a) print(b) Traceback (most recent call last): File "main.py", line 3, in b = fabs(a) TypeError: can't convert complex to float
А вот с помощью abs преобразование удается.
a = -10-2j b = abs(a) print(b) 10.19803902718557
Или же напишем свою функцию:
from math import sqrt def my_abs_complex(c): return sqrt(c.real**2 + c.imag**2) a = -10-2j b = my_abs_complex(a) print(b) 10.198039027185569
Результаты получились одинаковыми. Но нам все равно пришлось подключить библиотеку math для вычисления квадратного корня.
abs(x)
Возвращает абсолютное значение числа. Аргумент может быть целым числом, числом с плавающей запятой или объектом, реализующим abs() . Если аргумент представляет собой комплексное число, возвращается его величина.
Параметры ¶
Функция abs() принимает один аргумент: num — число, абсолютное значение которого должно быть возвращено.
Число может быть:
- целое число
- число с плавающей запятой
- комплексное число
Возвращаемое значение ¶
Метод abs() возвращает абсолютное значение заданного числа.
- Для целых чисел — возвращается целочисленное абсолютное значение
- Для чисел с плавающей запятой — возвращается абсолютное значение с плавающей запятой
- Для комплексных чисел — возвращается величина числа
Примеры ¶
number = -10 absolute = abs(number)print(absolute) # Результат: 10
Получить абсолютное значение числа
# случайное целое числоinteger = -40print('Абсолютное значение -40:', abs(integer)) #случайное число с плавающей запятойfloating = -56.21print('Абсолютное значение -56.21:', abs(floating)) # Результат: # Модуль числа -40: 40# Модуль числа -56.21: 56.21
Получить модуль комплексного числа
# случайное комплексное числоcomplex_ = (3 - 4j)print('Абсолютное значение 3 - 4j:', abs(complex_)) # Результат: # Абсолютное значение 3 - 4j is: 5.0
