Los operadores aritméticos en Python se utilizan para realizar operaciones matemáticas en variables y valores numéricos.
1. Operadores aritméticos en Python
A continuación se presentan los operadores aritméticos soportados por Python 3
Operador
Ejemplo
Significado
+ (unario)
+a
Unario Positivo
+ (binario)
a + b
Suma
- (unario)
-a
Unario Negativo
- (binario)
a - b
Resta
*
a * b
Multiplicación
/
a / b
División
%
a % b
Módulo
//
a // b
División de enteros (también denominado Floor Division)
**
a ** b
Exponencial
2. Operadores Unarios
Los operadores unarios se caracterizan porque se aplican sobre un único operando. En Python se soportan el operador Unario Positivo y Unario Negativo. Este tipo de operadores se aplican sobre tipos numéricos en Python.
num =10# Operador unario positivo+num10# Operador unario negativo-num-10# No se pueden restar stringstexto ="Hola mundo"-texto---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[5], line 21 texto ="Hola mundo"---->2-textoTypeError: bad operand typefor unary -:'str'
3. Suma y Resta
Los operadores Suma y Resta son operadores binarios que pueden aplicarse sobre distintos tipos de datos.
3.1. Tipos de datos Numéricos
# Ejemplo con números enterosnum1 =10num2 =5num1 + num215num1 - num25num3 = num2 - num1num3-5# Ejemplo con números de punto variablenum3 =1.5num4 =0.5num3 + num42.0num5 = num3 - num4num51.0
3.2. Strings
texto1 ="Hola"texto2 ="mundo"texto1 + texto2'Holamundo'# Espacio entre stringstexto3 = texto1 +' '+ texto2texto3'Hola mundo'texto1 - texto2 # No se pueden restar strings---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[24], line 1---->1 texto1 - texto2TypeError: unsupported operand type(s)for-:'str'and'str'
4. Multiplicación y División
Los operadores Multiplicación y División son operadores binarios que pueden aplicarse sobre distintos tipos de datos.
4.1. Tipos de datos numéricos
num1 =10num2 =5num1 * num250num1 / num2 # El resultado de la división siempre es un float2.0int(num1 / num2)2
4.2. Strings
text1 ="Hola"text2 ="mundo"text1 * text2 # No se pueden multiplicar strings entre sí---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[30], line 1---->1 text1 * text2TypeError: can't multiply sequence by non-int of type 'str'text1 *3# Solo se pueden multiplicar strings por un número entero'HolaHolaHola'text1 *3.5# No se pueden multiplicar strings por un float---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[32], line 1---->1 text1 *3.5TypeError: can't multiply sequence by non-int of type 'float'text1 / text2 # No se pueden dividir strings---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[33], line 1---->1 text1 / text2TypeError: unsupported operand type(s)for/:'str'and'str'
5. Módulo
El operador Módulo es un operador binario que devuelve el resto de una división entre tipos de datos numéricos.
num1 =10num2 =7num1 / num21.4285714285714286num1 % num2 # resto de la división de 10 / 73num3 =10.5num4 =7.2num3 % num43.3
6. Exponencial
El operador Exponencial es un operador binario que se aplica sobre tipos de datos numéricos.
num1 =10num1 **2100num1 **5100000text1 ="Hola"# No se pueden exponenciar stringstext1 **2---------------------------------------------------------------------------TypeErrorTraceback (most recent call last)Cell In[42], line 21 text1 ="Hola"---->2 text1 **2TypeError: unsupported operand type(s)for**orpow():'str'and'int'
7. Floor Division
El operador Floor Division es un operador binario que se aplica sobre tipos de datos numéricos y devuelve la parte entera del resultado.
num1 =10num2 =7num1 / num21.4285714285714286num1 // num2 # No hace redondeo, solamente se queda con el número entero1num3 =13num4 =7num3 / num41.8571428571428572num3 // num41