preloader

Conviértete en desarrollador Django: Día 3

Índice de contenido

Resumen:
Aprenda los fundamentos de Python y desarrolle las habilidades necesarias para crear aplicaciones básicas.
¿Cómo citar el presente artículo?
Romero, J. (15 de agosto de 2023). Título. python-data-engineer. https://www.python-data-scientist.com/es/blog/programacion/dia_1/.
¿Qué es la ciencia de datos? by Jeshua Romero Guadarrama, available under Attribution 4.0 International (CC BY 4.0) at https://www.python-data-scientist.com/es/blog/programacion/dia_1/.

Día 3. Operadores en Python

Descripción general


Python es un lenguaje de programación versátil, potente y popular para el desarrollo web, big data y secuencias de comandos. Django es un marco basado en Python que requiere conocimiento práctico de Python. En este módulo interactivo, aprenderemos los fundamentos de Python y manejaremos el lenguaje de programación más popular del mundo. Para cuando terminemos, tendremos las habilidades necesarias para crear aplicaciones básicas en Python.

Objetivos de aprendizaje


  • Familiaridad con los componentes centrales de Python, incluidos los tipos de datos, variables y operadores.
  • Experiencia práctica que implementa declaraciones condicionales y bucles en Python.
  • La capacidad de escribir funciones y recursión en Python.
  • Un conocimiento práctico de diferentes estructuras de datos en Python.

Contenido


Operadores

Esta lección destaca los diferentes tipos de operadores en Python.

Operadores se utilizan para realizar aritmética y lógico operaciones de datos. Nos permiten manipular e interpretar datos para producir resultados útiles.

Los operadores están representados por caracteres o palabras clave especiales.

En general, los operadores de Python siguen el infijo o prefijo anotaciones.

Los operadores infijo aparecen entre dos operandos (valores en los que el operador actúa) y, por lo tanto, generalmente se conocen como operadores binarios:

Figura 1. Operadores binarios.

Figura 1. Operadores binarios.

El operador prefijo generalmente trabaja en un operando y aparece antes. Por lo tanto, los operadores de prefijos se conocen como operadores unitarios:

Figura 2. Operadores unitarios.

Figura 2. Operadores unitarios.

Los 5 tipos de operadores principales en Python son:

  • Operadores aritméticos.
  • Operadores de comparación.
  • Operadores de asignación.
  • Operadores lógicos.
  • Operadores bit a bit.

Operadores aritméticos

En esta lección, aprenderemos cómo realizar cálculos utilizando operadores aritméticos.

A continuación, podemos encontrar los operadores aritméticos básicos en orden de precedencia. El operador listado más alto se calculará primero.

Estos operadores nos permiten realizar operaciones aritméticas en Python.

OperadorPropósitoNotación
()ParéntesisEncapsula la operación precedente
**ExponenteInfijo
%, *, /, //Módulo, Multiplicación, División, División de PisoInfijo
+, -Adición, sustracciónInfijo

Adición

Podemos agregar dos números usando el operador +:

python
print(10 + 5)

primer_flotante = 13.65
segundo_flotante = 3.40
print(primer_flotante + segundo_flotante)

numero = 20
flotante = 10.5
print(numero + flotante)
15
17.05
30.5

Como podemos ver en la línea 9, sumar un número entero y de punto flotante nos da un número de punto flotante.

Python convierte automáticamente el número entero a un número de punto flotante. Esto se aplica a todas las operaciones aritméticas.

Resta

Podemos restar un número del otro usando el operador -:

python
print(10 - 5)

primer_flotante = -18.678
segundo_flotante = 3.55
print(primer_flotante - segundo_flotante)

numero = 20
flotante = 10.5
print(numero - flotante)
5
-22.228
9.5

Multiplicación

Podemos multiplicar dos números usando el operador *:

python
print(40 * 10)

primer_flotante = 5.5
segundo_flotante = 4.5
print(primer_flotante * segundo_flotante)

numero = 3
flotante = 10.2
print(numero * flotante)
400
24.75
30.599999999999998

División

Podemos dividir un número por otro usando el operador /:

python
print(40 / 10)

primer_flotante = 5.5
segundo_flotante = 4.5
print(primer_flotante / segundo_flotante)

numero = 2
flotante = 12.4
print(flotante / numero)
4.0
1.2222222222222223
6.2

Una operación de división siempre da como resultado un número de coma flotante.

División de piso

En la división de piso, el resultado se eleva al entero más pequeño más cercano. También se conoce como división entera.

Para la división del piso, debemos usar el operador //:

python
print(43 // 10)

primer_flotante = 5.5
segundo_flotante = 4.5
print(primer_flotante // segundo_flotante)

numero = 2
flotante = 12.4
print(flotante // numero)
4
1.0
6.0

A diferencia de la división normal, la división del piso entre dos enteros da como resultado un entero.

Módulo

El número módulo de otro número se puede encontrar usando el operador %:

python
print(10 % 2)

veintiocho = 28
print(veintiocho % 10)

print(-28 % 10)  # El residuo es positivo si el operando de la derecha es positivo
print(28 % -10)  # El residuo es negativo si el operando de la derecha es negativo
print(34.4 % 2.5)  # El residuo puede ser un flotante
0
8
2
-2
1.8999999999999986

Precedencia

Una expresión aritmética que contenga diferentes operadores se calculará sobre la base de precedencia del operador.

Siempre que los operadores tengan igual precedencia, la expresión se calcula desde el lado izquierdo:

python
# Distinta precedencia
print(10 - 3 * 2)  # Primero se calcula la multiplicación, seguida de la resta

# Misma precedencia
print(3 * 20 / 5)  # Primero se calcula la multiplicación, seguida de la división
print(3 / 20 * 5)  # La división se calcula primero, seguida de la multiplicación
4
12.0
0.75

Paréntesis

Una expresión que está entre paréntesis internos se calculará primero, independientemente de la precedencia del operador:

python
print((10 - 3) * 2)  # La resta ocurre primero

print((18 + 2) / (10 % 8))
14
10.0

¡Usando todas las operaciones anteriores, podemos calcular expresiones matemáticas complejas en Python!

Tenga en cuenta que nunca estamos restringidos solo a estos operadores, hay innumerables utilidades aritméticas más a nuestra disposición.

Operadores de comparación

En esta lección, aprenderemos cómo realizar comparaciones en Python utilizando operadores de comparación.

Los operadores de comparación se pueden usar para comparar valores en términos matemáticos.

OperadorPropósitoNotación
>Mayor queInfijo
<Menos queInfijo
>=Mayor que o igual aInfijo
<=Menos que o igual aInfijo
==Igual aInfijo
!=No es igual aInfijo
isIgual a ( Identidad )Infijo
is notNo es igual a ( Identidad )Infijo

Comparaciones

El resultado de una comparación es siempre un bool.

Si la comparación es correcta, el valor del bool será True. De lo contrario, su valor será False.

Los operadores == y != comparan los valores de ambos operandos. Sin embargo, los operadores de identidad, is y is not, verifican si los dos operandos son exactamente los mismos objetos.

Veamos algunos ejemplos:

python
primero_numero = 5
segundo_numero = 10
tercer_numero = 10
primera_lista = [6,7,8]
segunda_lista = [6,7,8]

print(segundo_numero > primero_numero)  # 10 es mayor que 5
print(primero_numero > segundo_numero)  # 5 no es mayor que 10

print(segundo_numero == tercer_numero)  # Ambos tienen el mismo valor
print(tercer_numero != primero_numero)  # Ambos tienen valores diferentes

print(3 + 10 == 5 + 5)  # Ambos no son iguales
print(3 <= 2)  # 3 no es menor o igual que 2

print(segundo_numero is not tercer_numero)  # Ambos tienen el mismo objeto
print(primera_lista is segunda_lista)  # Ambos tienen diferentes objetos
True
False
True
True
False
False
False
False

Como podemos ver en la línea 7, segundo_numero es de hecho mayor que el primer_numero. Por lo tanto, el resultado es True. Por otro lado, línea 8 contiene una comparación incorrecta, que resulta en False.

Operadores de asignación

Esta lección muestra los diversos operadores de asignación de Python y su propósito.

Esta es una categoría de operadores que se utiliza para asignar valores a una variable. El operador = es un operador de asignación, pero no el único.

Aquí hay una lista de todos los operadores de asignación compatibles con Python:

OperadorPropósitoNotación
=AsignarInfijo
+=Agregar y asignarInfijo
-=Restar y asignarInfijo
*=Multiplicar y asignarInfijo
/=Dividir y asignarInfijo
//=Dividir de piso y asignarInfijo
**=Potenciar y asignarInfijo
%=Tomar modulo y asignaInfijo
|=OR y asignarInfijo
&=AND asignarInfijo
^=XOR y asignarInfijo
>>=Desplazar a la derecha y asignarInfijo
<<=Desplazar a la izquierda y asignarInfijo

Asignación de valores

Veamos algunos ejemplos para ver cómo se asignan los valores a las variables.

Las variables son mutable, para que podamos cambiar sus valores cuando queramos!

python
ano = 2019
print(ano)

ano = 2020
print(ano)

ano = ano + 1  # Usar el valor existente para crear uno nuevo
print(ano)
2019
2020
2021

Una cosa a tener en cuenta es que cuando una variable, primera, se asigna a otra variable, segunda, su valor es copiado en segunda. Por lo tanto, si luego cambiamos el valor de primera, segunda no se verá afectado:

python
primera = 20
segunda = primera
primera = 35  # Actualizando 'primera'

print(primera, segunda)  # 'segunda' permanece sin cambios
35 20

Los otros operadores

A continuación, podemos ver algunos de los operadores de tareas de los que hablamos en acción:

python
numero = 10
print(numero)

numero += 5
print(numero)

numero -= 5
print(numero)

numero *= 2
print(numero)

numero /= 2
print(numero)

numero **= 2
print(numero)
10
15
10
20
10.0
100.0

Operadores lógicos

¡Entendamos el propósito de los operadores lógicos!

Los operadores lógicos se utilizan para manipular la lógica de expresiones booleanas.

OperadorPropósitoNotación
andANDInfijo
orORInfijo
notNOTPrefijo

Expresiones lógicas

Las expresiones lógicas se forman utilizando booleanos y operadores lógicos.

A continuación, podemos encontrar algunos ejemplos:

python
# Expresión OR
mi_bool = True or False
print(mi_bool)

# Expresión AND
mi_bool = True and False
print(mi_bool)

# Expresión NOT
mi_bool = False
print(not mi_bool)
True
False
True

Valor de bits

Todo el código que vemos a nuestro alrededor en el mundo de hoy está compuesto de bits. Combinaciones de 1s y 0s forman la base de la programación.

En términos de bits, el valor de True es 1 y False corresponde a 0:

python
print(10 * True)
print(10 * False)
10
0

El intérprete de Python puede convertir automáticamente el bool a su forma numérica cuando sea necesario.

Operadores bit a bit

Esta lección muestra todos los diferentes operadores bit a bit disponibles en Python.

En programación, todos los datos están compuestos de 0s y 1s conocido como bits. Los operadores bit a bit nos permiten realizar operaciones relacionadas con bits en valores.

OperadorPropósitoNotación
&Bit a bit ANDInfijo
|Bit a bit ORInfijo
^Bit a bit XORInfijo
~Bit a bit NOTPrefijo
<<Desplazar bits a la izquierdaInfijo
>>Desplazar bits a la derechaInfijo

Ejemplos

python
primer_numero = 10  # Valor binario = 01010
segundo_numero = 20  # Valor binario = 10100

print(primer_numero & segundo_numero)   # 0   -> Valor binario = 00000
print(primer_numero | segundo_numero)   # 30  -> Valor binario = 11110
print(primer_numero ^ segundo_numero)   # 30  -> Valor binario = 11110
print(~primer_numero)                   # -11 -> Valor binario = -(1011)
print(primer_numero << 3)               # 80  -> Valor binario = 0101 0000
print(segundo_numero >> 3)              # 2   -> Valor binario = 0010
0
30
30
-11
80
2

Explicación

En la línea 4, realizamos el bit a bit AND. Esta operación toma un poco de num1 y el bit correspondiente de num2 y realiza un AND entre ellos.

En términos simples, AND puede considerarse como una multiplicación entre los dos operandos.

Ahora, visualicemos este ejemplo:

num1 es 01010 en binario y num2 es 10100. En el primer paso, se toman los primeros dígitos binarios de ambos números: 01010 10100 0 & 1 daría 0 ( nuevamente, piense en ello como una multiplicación ). A continuación, tomamos los segundos dígitos: 01010 10100 Estos dos nos darán una vez más 0. Al hacer esto para todos los pares, podemos ver que la respuesta es 0 cada vez. Por lo tanto, la salida es 00000. La operación OR en línea 5 funcionará en el mismo principio, excepto que en lugar de multiplicar, realizaremos la suma entre los dos números binarios.

0 OR 1 nos da 1. 1 OR 1 también produce 1 Los números binarios ( no van más allá 1). Sin embargo, 0 OR 0 nos dará 0 ( 0 + 0 sigue siendo 0 ).

Bitwise XOR y NOT también funcionarán en cada bit. Puedes jugar con el código para tener una mejor idea.

Las operaciones de cambio de bits (» y «) simplemente mueva los bits hacia la derecha o hacia la izquierda. Cuando se desplaza un número binario, un 0 también ingresa en el extremo opuesto para mantener el número del mismo tamaño.

Supongamos que tenemos un número binario 0110 ( 6 en decimal ). La operación que realizamos es 0110 » 2:

0110 > > 2 0011 ( mueva un paso hacia la derecha ) 0001 ( mueve un paso más hacia la derecha ) Operación completa Del mismo modo, podemos mover 0110 dos veces hacia la izquierda con la siguiente operación 0110 « 2:

0110 < < 2 01100 ( mueve un paso hacia la izquierda ) 011000 ( mueve un paso más hacia la izquierda ) Operación completa Nota: En Python, los ceros principales están truncados. Por ejemplo, el número 0011 será lo mismo que 11. Del mismo modo, el número 0001011 será lo mismo que 1011.

Atrás Operadores de asignación

Marcar como Comp

La naturaleza del lenguaje.

Desarrollado en 1990, Python es uno de los más populares propósito general lenguajes de programación en los tiempos modernos.

Figura 1. Python.

Figura 1. Python.

El término “ propósito general ” simplemente significa que Python se puede usar para una variedad de aplicaciones y no se enfoca en ningún aspecto de la programación.

Un lenguaje de alto nivel

Python cae dentro de la categoría de de alto nivel, interpretado idiomas. Un lenguaje de alto nivel es uno que nuestra máquina no puede entender directamente. Hay un cierto grado de abstracción en su sintaxis. Las máquinas generalmente están diseñadas para leer código de máquina, pero la sintaxis de alto nivel no se puede convertir directamente en código de máquina.

Como resultado, primero debe convertirse en bytecode que luego se convierte en código de máquina antes de que se pueda ejecutar el programa.

Python es un lenguaje interpretado porque, durante la ejecución, cada línea se interpreta en el lenguaje de máquina sobre la marcha.

Sin embargo, si tomamos el ejemplo de C + +, el código debe compilarse primero en un ejecutable y luego puede ejecutarse. En Python, podemos omitir este paso de compilación ( Python lo hace por nosotros detrás de escena ) y ejecutar directamente el código.

Legibilidad

Una de las principales razones del rápido crecimiento de Python es la simplicidad de su sintaxis. El idioma se lee casi como el inglés simple, lo que facilita la escritura de programas complejos.

Como no tiene mucha curva de aprendizaje, Python es un muy buen punto de entrada al mundo de la programación para principiantes.

Aplicaciones

Además de la facilidad de aprendizaje, Python es un lenguaje muy eficiente que se utiliza en casi todas las esferas de la informática moderna.

Esto es un argumento sólido para aprender Python, incluso para los no programadores.

Algunas de las principales aplicaciones de Python se destacan a continuación:

Figura 2. Aplicaciones de Python.

Figura 2. Aplicaciones de Python.

Historial de versiones

Python ha tenido varias actualizaciones importantes en el pasado. Python 2.7 fue ampliamente utilizado durante mucho tiempo, incluso después del lanzamiento de versiones más nuevas.

Sin embargo, Python 2.7 ha quedado en desuso a partir del 01 de enero de 2020 y reemplazado por completo por 3.xx versiones, conocidas como Python 3. Las diferencias entre Python 2.7 y Python 3 son diminutas, pero importantes de todos modos.

Para mantenernos al día con las últimas tecnologías, utilizaremos Python 3.

Podremos escribir y ejecutar código Python aquí mismo.

Escribiendo nuestro primer código

En esta lección, examinaremos uno de los códigos más simples en la sintaxis de Python.

¡En esta lección, comenzaremos a escribir código! Entonces, pasemos a las cosas divertidas.

Las declaraciones print

Cada vez que aprendemos un nuevo idioma, es una tradición milenaria comenzar mostrando el texto “Hola mundo” en la pantalla.

Cada idioma tiene una sintaxis diferente para mostrar o impresión Algo en la pantalla.

Como Python es uno de los idiomas más legibles que existen, podemos imprimir datos en el terminal simplemente usando la declaración print.

Así es como se ve la declaración:

print(datos)

Lo que necesitemos imprimir está encapsulado entre paréntesis después de print palabra clave. Intentemos imprimir “ Hello World ” en el terminal:

El presente blog ha sido patrocinado mediante crowdfunding con el siguiente mensaje: Nuestro Señor Jesucristo, el único Dios verdadero, es misericordioso y nuestro Salvador.

comments powered by Disqus