Python abs and fabs

Модуль числа в Python — функции abs() и math.fabs()

Запускаю китайскую реплику «ТАРДИС», и вот мы в пятом классе. На доске нарисована числовая ось, а на ней выделен отрезок. Его начало в точке 4, а конец — в 8. Учительница говорит, что длину отрезка можно найти путём вычитания координаты начала отрезка из координаты его конца. Вычитаем, получаем 4, и радуемся — мы нашли длину. Ура! 🎉

Перемещаемся на год вперёд, и там происходит странное: учительница выделяет мелом другой отрезок, но делает это в каком-то неправильном месте — левее точки с цифрой «0». Теперь перед нами старая задача, но с новыми числами и даже буквами: A, B, минус 4 и минус 8. Мы начинаем искать длину отрезка AB = [-4;-8]:

Переводим непонимающий взгляд с получившейся отрицательной длины на довольную улыбающуюся учительницу, а затем на доску. Там наверху, рядом с сегодняшней датой, написана тема урока: «Модуль числа».

Что такое модуль числа

Для вещественных чисел модуль определяется так:

Т.е. в любом случае, модуль — число большее или равное 0. Поэтому отрицательная длина в примере хитрой учительницы должна была быть взята по модулю:

Читайте также:  Как найти цифровой корень python

Тогда дети бы увидели, что геометрический смысл модуля — есть расстояние. Это справедливо и для комплексных чисел, однако формальное определение для них отличается от вещественного:

, где z — комплексное число: z = x + i y.

В Python для нахождения модуля числа применяются две функции: fabs() из подключаемой библиотеки math и встроенная функция abs() .

Abs

В то время как math.fabs() может оперировать только вещественными аргументами, abs() отлично справляется и с комплексными. Для начала покажем, что abs в python работает строго в соответствии с математическим определением.

# для вещественных чисел print(abs(-1)) print(abs(0)) print(abs(1)) > 1 > 0 > 1

Как видно, с вещественными числами всё в порядке. Перейдём к комплексным.

# для комплексных чисел print(complex(-3, 4)) print(abs(complex(-3, 4))) > (-3+4j) > 5.0

Если вспомнить, что комплексное число выглядит так: z = x + i y, а его модуль вычисляется по формуле:

, то можно без труда посчитать, что sqrt(3**2 + 4**2) действительно равно 5.0 .

Можно заметить, что abs() возвращает значения разных типов. Это зависит от типа аргумента:

print(type(abs(1))) > print(type(abs(1.0))) > print(type(abs(complex(1.0, 1.0))))

В этом кроется ещё одно отличие abs() от fabs() . Функция из модуля math всегда приводит аргумент к вещественному типу, а если это невозможно сделать — выбрасывает ошибку:

print(type(math.fabs(complex(2,3)))) > TypeError: can’t convert complex to float

Fabs

Для начала работы с fabs() необходимо импортировать модуль math с помощью следующей инструкции:

Мы уже выяснили, что fabs() не работает с комплексными числами, поэтому проверим работу функции на вещественных:

print(math.fabs(-10)) print(math.fabs(0)) print(math.fabs(10)) > 10.0 > 0.0 > 10.0

Функция производит вычисления в соответствие с математическим определением, однако, в отличие от abs() , всегда возвращает результат типа float :

Основные свойства модулей

# Квадрат модуля = квадрату числа print(pow(4, 2) == pow(abs(4), 2)) > True # |x| = |-x| print(abs(-10) == abs(10)) > True # Модуль произведения = произведению модулей: |ab|=|a||b| print(math.fabs(11 * 3) == math.fabs(11) * math.fabs(3)) > True # Аналогично для деления: |a/b|=|a|/|b| print(math.fabs(48/8) == math.fabs(48) / math.fabs(8)) > True # |a ** b| = |a| ** b print(abs(2 ** 10) == abs(2) ** 10) > True

И еще несколько важных неравенств:

Источник

Функция fabs() math модуля в Python

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

Что такое функция fabs() в Python?

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

Функция fabs() находится в математической библиотеке Python, а это значит, что мы должны сначала импортировать math-модуль, чтобы использовать этот метод.

Синтаксис

Аргументы

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

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

Возвращаемое значение

Метод возвращает абсолютное значение заданного числа и возвращается в типе float.

Примеры программирования

В приведенной выше программе мы взяли два входа: число с плавающей запятой(отрицательное), а другое — положительное целое число. Затем мы напечатали их абсолютное значение.

Здесь мы видим, что целое число(12) преобразуется в число типа float. После этого мы вычислили сумму этих двух чисел; для этого мы сначала преобразовали целое число в число с плавающей запятой.

Наконец, мы напечатали абсолютное значение суммы.

См. следующий программный код.

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

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

Разница между fabs() и abs() в Python

Обе функции abs() и fabs() используются для нахождения абсолютного значения числа. Разница в том, что math.fabs(number) всегда будет возвращать число с плавающей запятой, даже если аргумент является целым числом.

Напротив, Python abs() возвращает число с плавающей запятой или целое число в зависимости от аргумента. Если аргумент является комплексным числом, abs() вернет часть величины, тогда как fabs() вернет ошибку.

Источник

Calculate Absolute Value in Python Using abs() Function

Calculate Absolute Value in Python Using abs() Function

Python, an interpreted language, is one of the most accessible programming languages because it has simplistic syntax and not complicated code. Due to its ease of usage and learning, Python codes can be written and executed more quickly than any other programming language. As python provides multiple in-build functions to make your programming easy, it is necessary for you to learn and understand them in order to make your coding efficient. To help you with the same, in this article, we will study how you can find the absolute value in python with various in-build methods and external functions along with its example and output. So, let’s get started!

What Does the Python Absolute Value Do?

The Python programming language defines an absolute value function, which transforms negative numbers into positive ones. For any positive number, the absolute value is equal to the original number; however, for negative numbers, the absolute value is equal to (-1) multiplied by the negative number.

How to Find Python Absolute Value?

In Python, there are several ways to interact with positive and negative values. However, there are situations when we only need to ensure that our value does not have a negative sign. Below are two methods to find python absolute value:

Method 1: Using abs() function

Python provides a large collection of in-build methods especially when it comes to dealing with mathematical operations. abs() is one such in-build method in python that helps in converting negative integers into absolute values (without negative signs). To perform this conversion, abs() takes a single parameter, i.e., the number which needs to be converted into absolute value, and returns the positive integer without a negative sign. To understand the working of this method in detail, check out the example below:

For example:

no = -10 absolute_no = abs(no) print(absolute_no)

In the above example, we saw the results to convert the whole number into absolute value. But what if the number is floating type? Check out the below example to answer your question:

For example:

no = -10.2 absolute_no = abs(no) print(absolute_no)

In the case of a complex number, the abs() function return the magnitude of the number as shown in the below example:

For example:

no = (3-4i) absolute_no = abs(no) print(absolute_no)

Method 2: Using math.fabs() function

Just like the abs() function, Python also possesses the fabs() function which returns the absolute value for the argument you pass. As this module is from the «math» library, it is necessary to import the math library using the “import” keyword as shown in the below example.

For Example:

import math no = 10 absolute_no = math.fabs(no) print(absolute_no)

Looking at the above example, you’ll notice the key difference between the «fabs()» and «abs()» method. When it comes to the «abs()» method, the function returns the value as it is without the negative sign. But when working with the «fabs()» method, the function returns the floating-point value irrespective of the data type of the parameter you passed.

Conclusion

Sometimes we just need to utilize positive values, and the absolute value is a great tool for this. When you encounter an absolute value in a problem or equation, it signifies that whatever is included within it is always positive. Absolute values are frequently used in situations concerning distance, and they are sometimes used in combination with inequalities.

Источник

Оцените статью