Operadores de Phyton - HernanSan/programacion-1920 GitHub Wiki
Operadores lógicos
Estos son los distintos tipos de operadores con los que puede trabajar con valores booleanos, los llamados operadores lógicos o condicionales:
Operador and
El operador and evalúa si el valor del lado izquierdo y el lado derecho se cumple.
True and False
False
Operador or
El operador or evalúa si el valor del lado izquierdo o el lado derecho se cumple.
True or False True
Operador not
El operador not devuelve el valor opuesto la valor booleano.
not True False
Si la expresión es True el valor devuelto es False, de lo contrario si la expresión es False el valor devuelto es True.
not False True
Operadores aritméticos
Los valores numéricos son además el resultado de una serie de operadores aritméticos y matemáticos:
Operador Suma
El operador + suma los valores de tipo de datos numéricos.
3 + 2 5
Operador Resta
El operador - resta los valores de tipo de datos numéricos.
4 - 7 -3
Operador Negación
El operador - asigna un valor negativo a un tipo de datos numéricos.
-7 -7
Operador Multiplicación
El operador * multiplica los valores de tipo de datos numéricos.
2 * 6 12
Operador Exponentes
El operador ** calcula el exponente entre valores de tipo de datos numéricos.
2 ** 6 64
Operador división
El operador división el resultado que se devuelve es un número real.
3.5 / 2 1.75
Operador división entera
El operador división entera el resultado que se devuelve es solo la parte entera.
3.5 // 22 1.0
No obstante hay que tener en cuenta que si utilizamos dos operandos enteros, Python determinará que quiere que la variable resultado también sea un entero, por lo que el resultado de, por ejemplo, 3 / 2 y 3 // 2 sería el mismo: 1.
Si quisiéramos obtener los decimales necesitaríamos que al menos uno de los operandos fuera un número real, bien indicando los decimales:
r = 3.0 / 2
O bien utilizando la función float() para convertir a entero coma flotante o real:
r = float(3) / 2
Esto es así porque cuando se mezclan tipos de números, Python convierte todos los operandos al tipo más complejo de entre los tipos de los operandos.
Operador Módulo
El operador módulo no hace otra cosa que devolver el resto de la división entre los dos operandos. En el ejemplo, 7 / 2 sería 3, con 1 de resto, luego el módulo es 1.
7 % 2 1
Orden de precedencia
El orden de precedencia de ejecución de los operadores aritméticos es:
Exponente: ** Negación: - Multiplicación, División, División entera, Módulo: *, /, //, % Suma, Resta: +, - Eso quiere decir que se debe usar así:
2**1/12 0.16666666666666666
Más igualmente usted puede omitir este orden de precedencia de ejecución de los operadores aritméticos usando paréntesis () anidados entre cada nivel calculo, por ejemplo:
2**(1/12) 1.059463094359295
Operadores relacionales
Los valores booleanos son además el resultado de expresiones que utilizan operadores relacionales (comparaciones entre valores):
Operador ==
El operador == evalua que los valores sean iguales para varios tipos de datos.
5 == 3 False 5 == 5 True "Plone" == 5 False "Plone" == "Plone" True type("Plone") == str True
Operador !=
El operador != evalua si los valores son distintos.
5 != 3 True "Plone" != 5 True "Plone" != False True
Operador <
El operador < evalua si el valor del lado izquierdo es menor que el valor del lado derecho.
5 < 3 False
Operador >
El operador > evalua si el valor del lado izquierdo es mayor que el valor del lado derecho.
5 > 3 True
Operador <=
El operador <= evalua si el valor del lado izquierdo es menor o igual que el valor del lado derecho.
5 <= 3 False
Operador >=
El operador >= evalua si el valor del lado izquierdo es mayor o igual que el valor del lado derecho.
5 >= 3 True
Referencias:
https://entrenamiento-python-basico.readthedocs.io/es/latest/leccion3/operadores_relacionales.html
https://entrenamiento-python-basico.readthedocs.io/es/latest/leccion3/operadores_aritmeticos.html
https://entrenamiento-python-basico.readthedocs.io/es/latest/leccion4/operadores_logicos.html