Le module math de Python fournit de nombreuses fonctions d'opérations mathématiques pour les nombres à virgule flottante.

Le module cmath de Python contient certaines fonctions pour les opérations sur les nombres complexes.

Les fonctions du module cmath sont essentiellement les mêmes que celles du module math. La différence est que le module cmath traite les nombres complexes, tandis que le module math traite les nombres réels.

Pour utiliser les fonctions des modules math ou cmath, vous devez d'abord les importer :

import math

Afficher le contenu du paquet 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']
>>>

Explication de chaque fonction :

Prise en charge des nombres complexes en Python et application du module cmath

Python prend en charge les opérations sur les nombres complexes. L'expression d'un nombre complexe en Python est C==c.real+c.imag*j, un nombre complexe C est constitué de sa partie réelle et de sa partie imaginaire.

Pour les nombres complexes, Python prend en charge les opérations d'addition, de soustraction, de multiplication et de division, et fournit également le module cmath pour prendre en charge d'autres opérations sur les nombres complexes. Le module cmath correspond au module math en Python ; math prend en charge les nombres réels. Nous abordons ici principalement l'utilisation de plusieurs fonctions du module cmath.

Afficher le contenu du paquet 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. Conversion entre les représentations en coordonnées polaires et cartésiennes.

C==c.real+c.imag*jLa méthode de représentation des nombres complexes est la représentation cartésienne. La méthode polar() et la méthode rect() du module cmath permettent de convertir entre la représentation polaire et la représentation cartésienne des nombres complexes. Exemple :

>>> 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)
>>>

La fonction polar calcule un nombre complexe d'entrée sous forme cartésienne et renvoie un tuple de deux éléments. La première valeur est le module de Z, et la seconde est la valeur de phase. La fonction rect() calcule la représentation cartésienne à partir du module et de la valeur de phase en entrée.

Si vous avez besoin de déterminer séparément la valeur de phase d'un nombre complexe, vous pouvez appeler la fonction cmath.phrase(x), qui renvoie la valeur de phase.

2. Fonctions exponentielles et logarithmiques des nombres complexes

La fonction exponentielle pour les nombres complexes est cmath.exp(x), utilisée pour évaluer l'expression e^x.

cmath.log(x[,base])Sert à trouver le logarithme de x en base Base.

cmath.log10(x)Sert à trouver le logarithme de x en base 10.

cmath.sqrt(x)Sert à trouver la racine carrée de x.

3. Équations de fonctions trigonométriques de nombres complexes

Inclut tous les calculs de fonctions trigonométriques.acos(x) asin(x) atan(x) sin(x) cos(x) tan(x)。

4. Détermination du type de paramètre

cmath.isinf(x)Renvoie vrai si la partie réelle ou la partie imaginaire de x est infinie.

cmath.isnan(x)Renvoie vrai si la partie réelle ou la partie imaginaire de x n'est pas un nombre.

5. Prise en charge des constantes

cmat.piValeur à virgule flottante, représentant la valeur de pi.

cmat.eValeur à virgule flottante, représentant la base du logarithme népérien.