<jupyter_start><jupyter_text><jupyter_code><jupyter_output><empty_output><jupyter_text>**Operadores aritméticos**:Los operadores permiten realizar diferentes procesos de cálculo en cualquier lenguaje de programación.Los operadores más básicos:1.Suma2.Resta3.Multiplicación4.División**Suma y resta**:Símbolo suma(+) el cual se utilizará em medio de la declaraci{on de las variables a operar.Símbolo resta(-)<jupyter_code>print(10-300)
a=20
b=35
print(a-b)
numero_botellas=12
print(numero_botellas + 8)
numero_botellas=12
numero_botellas=numero_botellas + 8
print(numero_botellas)<jupyter_output>20<jupyter_text>**Sumas entre los diferentes tipos de variables**:Recordemos los tipos de variables vistos en la clase ayer:1.Declaración de variables númericas enteros2.Flotantes(incorpora y flexibiliza los decimales)3.Tipo cadena<jupyter_code>q1=100
q2=24.5
print(type(q1+q2))
v1="quiero"
v2="un celular"
v3=v1+" "+v2
print(v1+" "+v2)
xq2=235
xq3=400
print(xq2-xq3)

xq2=24.66
xq3=4
print(type(xq2-xq3))<jupyter_output>-165
<class 'float'><jupyter_text>**IMPORTANTE** La resta no funciona directamente para variable tipo cadena. (Ejemplo de error)<jupyter_code>v1="5"
v2="2.3"

print(str(v1-v2))<jupyter_output><empty_output><jupyter_text>**Multiplicación**:Definamos la multiplicación como la suma de varias veces un número, cantidad de veces inidicadas por el otro número. Ejemplo: 4x2=4+4=8 El símbolo que se maneja es (*)<jupyter_code>cali=5
palmira=6
print(cali*palmira)<jupyter_output>30<jupyter_text>**IMPORTANTE**: Se aplica la ley conmutativa. Recordemos que la ley conmutativa es que el orden de lso factores no altera el resultado (Aplica para suma y multiplicación)<jupyter_code>cali=5
palmira=6
print(palmira*cali)<jupyter_output>30<jupyter_text>División**ACLACRACIÓN**: NO aplica la ley conmutativa. El símbolo de división (/).<jupyter_code>a=20
b=4
print(a/b, b/a, a+b, a-b)<jupyter_output>5.0 0.2 24 16<jupyter_text>Para el print podemos separar las operaciones por variable con (,). Lo cual, no afecta la impresión de los resultados por operación asignada. **Tipos de división**:División exacta (//)División Inexacta(/)<jupyter_code>print(15//4)
print(15/4)<jupyter_output>3
3.75<jupyter_text>---------------------------------------------------------------------------ZeroDivisionError                         Traceback (most recent call last) in ()      1 print(15//4)      2 print(15/4)----> 3 print(2/0)ZeroDivisionError: division by zeroNota: Operación de división, al igual que una división normal, No es posible dividir entre cero. ¿Por qué? Porque en matemáticas es un resultado indefinido.1.Potenciación2.Módulo **Potenciación**:En python el simbolo es (**). El primer valor es la base y el último valor el exponente.<jupyter_code>print(2**4)<jupyter_output>16<jupyter_text>**Módulo**Le llamamos módulo al residuo de la operación de división. El símbolo usado para mostrar el residuo es (%) El primer valor es el dividendo y el último valor es el divisor.<jupyter_code>print(88%9)<jupyter_output>7<jupyter_text>**Operadores de comparación**Los operadores de comparación, sirven para comaprar varios valores. En la vida cotidiana a la hora de tomar decisiones tenemos que decidir entre un camino u otro, ejemplo: Compras, decisiones de vida, caminos por recorrer.**Igualdad**Símbolo en Python es(==)<jupyter_code>x=30
z=31
print(x==z)
x="casa"
z="caza"
print(x!=z)<jupyter_output>True<jupyter_text>**Mayor que**Símbolo en Python(>) Siempre en comparativa se designa cual es menor o el mayor, por el valor que está a la izquiera de la operación.<jupyter_code>print(30>29.8)
print(20>10)<jupyter_output>True
True<jupyter_text>**Menor que**Caso contrario, el símbolo es (<).<jupyter_code>**Mayor o igual que**

El símbolo es (<=)
c=45
print(c<=46)<jupyter_output>True<jupyter_text>Tener en cuenta: En comparaciones los resultados que nos arrojan siempre es de tipo Booleano es decir: True or False (Verdadero o Falso).**Operadores Lògicos**Python incluye tres operadores lógicos base:1.AND(y)2.OR(o)3.NOT(No)Los operadores lógicos funcionan solo con valores ovariables booleanas, a su vez, devuelven como respuesta valores booleanos.**Operador AND**Este operador solo devolverá (Verdadero) si ambos valores lo son. ¿Cómo usar el operador AND? Para usar este operador basta con escribir un valor Booleano, luego, la palabra "and" y por último otro valor booleano.**Ejemplo**<jupyter_code>print(True and False)<jupyter_output>False<jupyter_text>1. True and True = True1.True and False = False2.False and False =False3.False and True =False **Operador OR**A diferencia del operador AND, Or devuelve a todo verdadero a menos de que ambos valores sean FALSOS.<jupyter_code>print(True or True)
print(False or False)<jupyter_output>True
False<jupyter_text>**Ejemplo de contextualizació OR**1. False or False = False1.True or True = True2.True or False =True3.False or True =True<jupyter_code>a=3
b=2
print(a>4 or a==4)
print(b==b and a>=b)<jupyter_output>False
True<jupyter_text>**Operador NOT**Este operador es negación, en español "No". Este operador es muy especial, dado uqe por sí solo no sirve para hacer ninguna operación, lo único que hace es negar, o en palabras más simples, invertir el valor booleano que viene después de él.<jupyter_code>print(not False)
print(not True)<jupyter_output>True
False<jupyter_text>**Procedencia de operadores**Es muy importante manejar el orden de las operaciones al realizarlas, para no caer en problemas de código error.El orden debe ser:1.De izquierda a derecha 2.Parentesis 3.Potenciación o radicación 4.Multiplicación y división 5.Suma y Resta **Ejemplo**: 4-2(10)=1.Primero el parentesis: 4-2*10= 2.Se continúa con la multiplicación: 4-20= 3.Por último la resta: 4-20=-16 ¿Cuál crees que es el resultado de siguiente operación?<jupyter_code>a=False
b=True
c=True
print(not c and (a or b) )
print(3-2*(13-5))<jupyter_output>-13
{'fraction_non_alphanumeric': 0.11337752847186809, 'fraction_numerical': 0.03195648478667346, 'mean_word_length': 5.889929742388759, 'pattern_counts': {'":': 0, '<': 61, '<?xml version=': 0, '>': 64, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '18', 'dir': 'jupyter-structured-clean-dedup', 'id': '104925', 'license': 'MIT', 'n_tokens_mistral': 2292, 'n_tokens_neox': 2188, 'n_words': 635, 'path': 'Clase2.ipynb', 'repo_name': 'Mapuertag/Datascience300', 'size': '5883'}