Comment faire des maths en Python 3 avec des opérateurs

introduction

Les nombres sont extrêmement courants dans la programmation. Ils sont utilisés pour représenter des éléments tels que les dimensions de la taille de l’écran, les emplacements géographiques, l’argent et les points, le temps passé dans une vidéo, les positions des avatars du jeu et les couleurs par l’assignation de codes numériques.

La capacité à effectuer efficacement des opérations mathématiques dans la programmation est une compétence importante à développer en raison de la fréquence à laquelle vous travaillez avec des nombres. Bien qu’une connaissance approfondie des mathématiques puisse certainement vous aider à devenir un meilleur programmeur, ce n’est pas une condition préalable. Si vous n’avez pas de formation en mathématiques, essayez de penser aux mathématiques comme un moyen d’accomplir ce que vous voudriez accomplir et comme un moyen d’améliorer votre pensée logique.

Nous allons travailler avec deux des types de données numériques les plus utilisés de Python, * entier * et * float *:

  • Integers sont des nombres entiers pouvant être positifs, négatifs ou 0 (…, + -1 + `, + 0 + , '+ 1 +,…).

  • Floats sont des nombres réels, ils contiennent un point décimal (comme dans +9.0+ `ou + -2,25 + `).

Ce didacticiel présente les opérateurs pouvant être utilisés avec des types de données numériques en Python.

Les opérateurs

Un * opérateur * est un symbole ou une fonction qui indique une opération. Par exemple, en mathématiques, le signe plus ou + est l’opérateur qui indique l’addition.

En Python, nous verrons des opérateurs familiers issus des mathématiques, mais d’autres opérateurs que nous utiliserons sont spécifiques à la programmation informatique.

Voici un tableau de référence rapide des opérateurs liés aux mathématiques en Python. Nous allons couvrir toutes les opérations suivantes dans ce tutoriel.

Operation What it returns

x + y

Sum of x and y

x - y

Difference of x and y

-x

Changed sign of x

+x

Identity of x

x * y

Product of x and y

x / y

Quotient of x and y

x // y

Quotient from floor division of x and y

x % y

Remainder of x / y

x ** y

x to the y power

Nous couvrirons également les copérateurs d’assignation composés, y compris + + = + `et + * = + , combinant un opérateur arithmétique avec l’opérateur + = + `.

Addition et soustraction

En Python, les opérateurs d’addition et de soustraction fonctionnent comme en mathématiques. En fait, vous pouvez utiliser le langage de programmation Python comme calculatrice.

Voyons quelques exemples, en commençant par les entiers:

print(1 + 5)
Output 6

Au lieu de passer des entiers directement dans l’instruction + print +, nous pouvons initialiser des variables pour représenter des valeurs entières:

a = 88
b = 103

print(a + b)
Output191

Comme les entiers peuvent être à la fois des nombres positifs et négatifs (et 0 également), nous pouvons ajouter un nombre négatif avec un nombre positif:

c = -36
d = 25

print(c + d)
Output-11

L’addition se comportera de la même manière avec les flotteurs:

e = 5.5
f = 2.5

print(e + f)
Output8.0

Comme nous avons ajouté deux flottants, Python a renvoyé une valeur de flottant avec une décimale.

La syntaxe pour la soustraction est la même que pour l’addition, sauf que vous changerez votre opérateur du signe plus (+) au signe moins (+ - +):

g = 75.67
h = 32

print(g - h)
Output43.67

Ici, nous avons soustrait un entier d’un float. Python retournera un float si au moins un des nombres impliqués dans une équation est un float.

Opérations arithmétiques unaires

Une expression mathématique unaire consiste en un seul composant ou élément et, en Python, les signes plus et moins peuvent être utilisés comme un seul élément associé à une valeur pour renvoyer l’identité de la valeur (+), ou modifier le signe de la valeur (+ - +).

Bien que cela ne soit pas couramment utilisé, le signe plus indique l’identité de la valeur. Nous pouvons utiliser le signe plus avec des valeurs positives:

i = 3.3
print(+i)
Output3.3

Lorsque nous utilisons le signe plus avec une valeur négative, il retournera également l’identité de cette valeur et, dans ce cas, ce serait une valeur négative:

j = -19
print(+j)
Output-19

Avec une valeur négative, le signe plus renvoie la même valeur négative.

Le signe moins, alternativement, modifie le signe d’une valeur. Ainsi, lorsque nous passons une valeur positive, nous constatons que le signe moins avant la valeur renvoie une valeur négative:

i = 3.3
print(-i)
Output-3.3

Sinon, lorsque nous utilisons l’opérateur unaire de signe moins avec une valeur négative, une valeur positive est renvoyée:

j = -19
print(-j)
Output19

Les opérations arithmétiques unaires indiquées par les signes plus et moins renverront soit l’identité de la valeur dans le cas de «+ i +», soit le signe opposé de la valeur comme dans « -i +».

Multiplication et division

Tout comme l’addition et la soustraction, la multiplication et la division ressembleront beaucoup à ce qu’elles sont en mathématiques. Le signe que nous utiliserons en Python pour la multiplication est «+ * » et le signe que nous utiliserons pour la division est « / +».

Voici un exemple de multiplication en Python avec deux valeurs float:

k = 100.1
l = 10.1

print(k * l)
Output1011.0099999999999

Lorsque vous divisez en Python 3, votre quotient sera toujours renvoyé sous forme de float, même si vous utilisez deux entiers:

m = 80
n = 5

print(m / n)
Output16.0

C’est l’une des major changements entre Python 2 et Python 3 . L’approche de Python 3 fournit une réponse fractionnaire de sorte que lorsque vous utilisez + / + pour diviser + 11 + par + 2 +, le quotient de` + 5.5 + `sera renvoyé. En Python 2, le quotient renvoyé pour l’expression «11 / 2 +» est « 5 +».

L’opérateur + / + de Python 2 effectue la * division du plancher *, où pour le quotient + x + le nombre renvoyé est le plus grand entier inférieur ou égal à + ​​x +. Si vous exécutez l’exemple ci-dessus de + print (80/5) + avec Python 2 au lieu de Python 3, vous recevrez «+ 16 +» comme sortie sans décimale.

En Python 3, vous pouvez utiliser + // + pour effectuer la division d’étage. L’expression +100 // 40 + renverra la valeur de + 2 +. La division du sol est utile lorsque vous avez besoin d’un quotient entier.

Modulo

L’opérateur +% + est le modulo, qui renvoie le reste plutôt que le quotient après la division. Ceci est utile pour rechercher des nombres qui sont des multiples du même nombre, par exemple.

Regardons le modulo en action:

o = 85
p = 15

print(o % p)
Output10

Pour décomposer cela, 85 divisé par 15 renvoie le quotient de 5 avec un reste de 10. La valeur + 10 + correspond à ce qui est renvoyé ici car l’opérateur modulo renvoie le reste d’une expression de division.

Si nous utilisons deux float avec le modulo, une valeur de float sera renvoyée pour le reste:

q = 36.0
r = 6.0

print(o % p)
Output0.0

Dans le cas de 36.0 divisé par 6.0, il n’y a pas de reste, donc la valeur + 0.0 + est renvoyée.

Puissance

L’opérateur + + en Python est utilisé pour augmenter le nombre de gauche à la puissance de l’exposant de droite. C’est-à-dire que dans l’expression "5 ** 3 +", 5 est élevé au 3ème pouvoir. En mathématiques, nous voyons souvent cette expression traduite par 5³, et ce qui se passe réellement est que 5 est multiplié par lui-même 3 fois. En Python, nous obtiendrions le même résultat de « 125 +» en exécutant soit «+5