Модуль math Python предоставляет множество функций математических операций для чисел с плавающей точкой.
Модуль cmath Python содержит некоторые функции для операций с комплексными числами.
Функции модуля cmath в основном такие же, как и функции модуля math. Разница в том, что модуль cmath работает с комплексными числами, а модуль math — с действительными числами.
Чтобы использовать функции math или cmath, сначала нужно импортировать их:
import math
Просмотреть содержимое пакета math:
>>> import math >>> dir(math) ['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc'] >>>
Объяснение каждой функции:

Поддержка комплексных чисел в Python и применение модуля cmath
Python поддерживает операции с комплексными числами. Выражение комплексного числа в Python имеет вид C==c.real+c.imag*j, комплексное число C состоит из своей действительной и мнимой части.
Для комплексных чисел Python поддерживает операции сложения, вычитания, умножения и деления, а также предоставляет модуль cmath для поддержки других операций с комплексными числами. Модуль cmath соответствует модулю math в Python; math обеспечивает поддержку действительных чисел. Здесь мы в основном рассматриваем использование нескольких функций модуля cmath.
Просмотр содержимого пакета cmath:
>>> import cmath >>> dir(cmath) ['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'cos', 'cosh', 'e', 'exp', 'inf', 'infj', 'isclose', 'isfinite', 'isinf', 'isnan', 'log', 'log10', 'nan', 'nanj', 'phase', 'pi', 'polar', 'rect', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau'] >>>
1. Преобразование между полярным и декартовым представлениями координат.
C==c.real+c.imag*jСпособ представления комплексных чисел — декартово представление. Методы polar() и rect() в модуле cmath могут преобразовывать между полярным представлением и декартовым представлением комплексных чисел. Пример:
>>> import cmath >>> Z=1+2j >>> print cmath.polar(Z) (2.23606797749979, 1.1071487177940904) >>> a,b=cmath.polar(Z) >>> print cmath.rect(a,b) (1+2j) >>>
Функция polar вычисляет входное комплексное число в декартовой форме и выводит кортеж из двух элементов. Первое значение — модуль Z, а второе — значение фазы. Функция rect() вычисляет входные модуль и значение фазы и выводит декартово представление.
Если нужно отдельно найти значение фазы комплексного числа, можно вызвать функцию cmath.phrase(x), которая возвращает значение фазы.
2. Экспоненциальные и логарифмические функции комплексных чисел
Экспоненциальная функция для комплексных чисел — cmath.exp(x), используется для вычисления выражения e^x.
cmath.log(x[,base])Используется для нахождения логарифма x по основанию Base.
cmath.log10(x)Используется для нахождения логарифма x по основанию 10.
cmath.sqrt(x)Используется для нахождения квадратного корня из x.
3. Тригонометрические функции комплексных чисел
Включает все вычисления тригонометрических функций.acos(x) asin(x) atan(x) sin(x) cos(x) tan(x)。
4. Проверка типа параметра
cmath.isinf(x)Возвращает true, если действительная или мнимая часть x бесконечна.
cmath.isnan(x)Возвращает true, если действительная или мнимая часть x не является числом.
5. Поддержка констант
cmat.piЗначение с плавающей запятой, представляющее значение pi.
cmat.eЗначение с плавающей запятой, представляющее основание натурального логарифма.