Python se ha convertido en uno de los lenguajes de programación más populares del mundo en los últimos años. Su versatilidad permite que se utilice en una amplia gama de aplicaciones, desde el aprendizaje automático hasta la construcción de sitios web, automatización de tareas y pruebas de software.
Además, su similitud con el lenguaje humano lo hace accesible tanto para personas que desarrollan software como para aquellos que no están necesariamente involucrados en este campo.
En este artículo, presentaremos aspectos importantes sobre el lenguaje Python, como qué es, cómo surgió, algunos conceptos básicos para utilizarlo, las IDE más populares entre los usuarios de Python, tipos de datos, bibliotecas y frameworks más utilizados, en definitiva, un enfoque completo. ¿Listos?
Python es un lenguaje de programación de propósito general, lo que significa que se puede utilizar para crear una amplia variedad de aplicaciones y no está especializado en un problema específico.
Esta versatilidad, junto con su facilidad de uso para principiantes, lo ha convertido en uno de los lenguajes más utilizados en la actualidad.
Algunos de los puntos destacados de Python son:
Es un lenguaje interpretado, lo que significa que no necesita pasar por el proceso de compilación. En el caso de Python, el proceso de interpretación se realiza dentro de máquinas virtuales, donde el código pasa por una capa intermedia que traduce las instrucciones del programa a código binario. Esto acelera considerablemente la velocidad de desarrollo.
Su sintaxis es simple, fácil de aprender y muy cercana al lenguaje que utilizamos en nuestra comunicación cotidiana. Por esta razón, se puede decir que es un lenguaje de alto nivel.
Es multiparadigma, lo que significa que nos permite programar en varios paradigmas, como:
El propio programa "reconoce" el tipo de dato que se está utilizando, por lo que no es necesario declararlo previamente. Por eso decimos que Python tiene una semántica dinámica.
En cuanto al origen de Python, fue desarrollado inicialmente a fines de la década de 1980 por el programador holandés Guido van Rossum, y su primera versión fue lanzada en 1991 en Centrum Wiskunde & Informatica - CWI (Instituto Nacional de Investigación en Matemáticas y Ciencias de la Computación), en los Países Bajos.
El lenguaje ha experimentado grandes avances en el desarrollo de código abierto, utilizando las PEPs ("Propuestas de Mejora de Python") como principal herramienta para sugerencias de mejora y discusiones dentro de la comunidad.
Estas PEPs se utilizan para describir cambios en el lenguaje o en sus normas, y son evaluadas por el público, aceptadas o rechazadas después de muchas discusiones. Cualquier persona puede escribir y enviar una PEP para su evaluación.
Basándonos en la investigación "Python Developers Survey 2021 Results" realizada por JetBrains, Python es uno de los lenguajes que crece más rápidamente en relevancia y es valorado por las empresas que lo utilizan debido a sus características, como agilidad, practicidad y versatilidad, especialmente para proyectos que requieren mayor complejidad.
En las áreas en las que se utiliza con mayor frecuencia, destacamos:
Podemos señalar los principales motivos para aprender Python:
Sintaxis simple: Python tiene una sintaxis clara y legible, lo que facilita su comprensión y escritura de código.
Multiplataforma y de código abierto: Python es compatible con diferentes sistemas operativos y está disponible de forma gratuita, lo que lo hace accesible y versátil.
Versatilidad: Python se puede utilizar en una amplia gama de aplicaciones, desde el desarrollo web hasta la automatización de tareas, aprendizaje automático, análisis de datos y mucho más.
Comunidad leal y activa: Python cuenta con una gran comunidad de desarrolladores que ofrecen soporte, comparten conocimientos y colaboran en proyectos, lo que facilita el aprendizaje y el crecimiento profesional.
Utilizado por grandes empresas: Python es ampliamente utilizado por empresas de renombre en diversos sectores, lo que demuestra su relevancia y demanda en el mercado laboral.
Popularidad en Ciencia de Datos: Python es la opción preferida para muchas tareas de ciencia de datos debido a su amplio conjunto de bibliotecas especializadas, como NumPy, Pandas y scikit-learn.
Alta demanda laboral: Debido a su versatilidad y uso generalizado, las habilidades en Python son altamente valoradas en el mercado laboral, lo que abre numerosas oportunidades profesionales.
Recordando, mencionamos anteriormente que Python es un lenguaje de tipado dinámico, lo que significa que no es necesario declarar el tipo de variable ni realizar conversiones (cambio de tipo de variable), ya que el intérprete se encarga de eso por nosotros.
Esto también significa que, si por alguna razón necesitamos cambiar el tipo de variable durante la ejecución del programa, es posible hacerlo.
Los tipos de datos estándar en Python son:
Entero (int) Ejemplo: 1
Punto flotante o decimal (float) Ejemplo: 1.1
Complejo (complex) Ejemplo: 8j
Cadena de texto (str) Ejemplo: hola
Booleano (bool) Ejemplo: True / False
Lista (list) Ejemplo: ['Mónica', 'Ana', 'Bruno', 'Alice']
Tupla (tuple) Ejemplo: (90, 79, 54, 32, 21)
Diccionario (dict) Ejemplo: {'Camila': 1.65, 'Larissa': 1.60, 'Guilherme': 1.70}
Es un tipo utilizado para representar números enteros, positivos o negativos, sin componente decimal. En el siguiente código, por ejemplo, vemos las variables "edad" y "año" con los valores 20 y 2010 asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo entero:
edad = 20
año = 2010
print(type(edad))
print(type(año))
<class 'int'>
<class 'int'>
Es un tipo de dato compuesto por números decimales. El tipo float se utiliza para representar números racionales (que pueden ser expresados como una fracción), comúnmente conocidos como "números decimales".
En el siguiente código, por ejemplo, vemos las variables "altura" y "peso" con los valores 1.73 y 78.500 asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo float:
altura = 1.73
peso = 78.500
print(type(peso))
print(type(altura))
<class 'float'>
<class 'float'>
Es un tipo de dato utilizado para representar números complejos, comúnmente utilizado en cálculos geométricos y científicos.
Un número complejo consta de dos partes: la parte real y la parte imaginaria, siendo la parte imaginaria representada por una "j" en el sufijo.
Con la función complex()
podemos convertir números reales en números complejos. La función toma dos argumentos, el primero es el número real que representa la parte real del número complejo, y el segundo es un argumento opcional que representa la parte imaginaria. Por ejemplo: z = complex(x, y).
En el siguiente ejemplo, vemos las variables "a" y "b" con los valores 10+16j
y 3+80j
asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo complex:
a = 10+16j
b = 3+80j
print(type(a))
print(type(b))
<class 'complex'>
<class 'complex'>
Es un conjunto de caracteres utilizado para representar palabras, frases o textos en general.
Tenemos como ejemplo las variables "nombre
" y "profesión
", con los valores "Guillermo
" y "Ingeniero de Software
" asignados a ellas. Si solicitamos que el programa imprima el tipo de estas variables, obtendremos que son del tipo string (cadena de texto):
nombre = 'Guillermo'
profesion = 'Ingeniero de Software'
print(type(profesion))
print(type(nombre))
<class 'str'>
<class 'str'>
Es un tipo de dato lógico que puede representar únicamente dos valores: falso o verdadero (False o True, en Python).
En la lógica computacional, estos valores se pueden considerar como 0 o 1.
Como ejemplo, tenemos las variables "viernes
" y "feriado
", con los valores True y False asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo booleano:
viernes = True
feriado = False
print(type(viernes))
print(type(feriado))
<class 'bool'>
<class 'bool'>
Las listas agrupan un conjunto de elementos variados, que pueden incluir enteros, flotantes, cadenas de texto, otras listas y otros tipos de datos.
Se definen utilizando corchetes para delimitar la lista y comas para separar los elementos. Ya existe un artículo sobre listas en Python: operaciones básicas en la plataforma, por si deseas profundizar en el tema.
En el siguiente código, por ejemplo, vemos las variables "alumnos
" y "notas
" con los datos: 'Monica
', 'Ana
', 'Bruno
', 'Alice
' y 10, 8.5, 7.8, 8.0
asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo lista:
alumnos = ['Monica', 'Ana', 'Bruno', 'Alice']
notas = [10, 8.5, 7.8, 8.0]
print(type(alumnos))
print(type(notas))
<class 'list'>
<class 'list'>
Al igual que las listas, las tuplas son un tipo de dato que agrupa un conjunto de elementos. Sin embargo, su forma de definición es diferente, ya que se utilizan paréntesis y los elementos se separan por comas.
Pero la principal diferencia con las listas es que las tuplas son inmutables, es decir, una vez definidas, no se pueden modificar. Para obtener más información sobre este tipo de dato, puedes consultar el artículo "Conociendo las tuplas en Python".
En el siguiente ejemplo, tenemos las variables "valores
" y "puntos
" con conjuntos de datos asignados a ellas. Si solicitamos que el programa imprima el tipo de las variables, obtendremos que son del tipo tupla.
valores = (80, 29, 45, 91, 23)
puntos = (10, 29.05, 66.8, 72)
print(type(valores))
print(type(puntos))
<class 'tuple'>
<class 'tuple'>
Los diccionarios se utilizan normalmente para agrupar elementos mediante una estructura de clave y valor, donde la clave es el primer elemento, seguido de dos puntos y luego el valor.
A continuación, se muestra un ejemplo de su uso utilizando variables de altura y edad, con datos de personas como clave y sus respectivas alturas y edades como valores.
altura = {'Sandra': 1.65, 'Elizabeth': 1.60, 'Roberto': 1.70}
edad = {'Sandra': 35, 'Elizabeth': 58, 'Roberto': 68}
print(type(altura))
print(type(idade))
<class 'dict'>
<class 'dict'>
En Python, es posible cambiar el tipo de una variable utilizando funciones de conversión específicas para cada tipo de dato. A continuación, se presentan algunos ejemplos de cómo cambiar los tipos de variables.
#Antes de la conversión:
altura = 1.55
print(type(altura))
#Realizando la conversión:
altura = str(altura)
#Después de la conversión:
print(type(altura))
print(altura)
#Antes de la conversión:
edad = 18
print(type(edad))
#Realizando la conversión:
edad = float(edad)
#Después de la conversión:
print(type(edad))
print(edad)
Las estructuras condicionales son utilizadas para controlar el flujo de ejecución de un programa, permitiendo determinar qué bloque de código se ejecutará según una determinada condición. En Python, se utilizan las estructuras if
, elif
y else
para esto.
Se utiliza el if en un programa cuando se desea verificar si una condición es verdadera y ejecutar el bloque de código contenido dentro de su ámbito. Se hace de la siguiente manera:
media = 7
if media > 6.9:
print("Usted fue aprobado")
En este ejemplo, el programa ejecutará y mostrará el mensaje "Usted fue aprobado" solo si la variable media tiene un valor mayor a 6.9. En caso de que el valor sea menor, simplemente ignorará la instrucción "print" y finalizará.
Si utilizamos if/else en conjunto, se ejecutará una de las acciones presentes en el código. Si la condición del if
es verdadera, se ejecutará una acción, de lo contrario, se ejecutará la acción del else. Así, se prueba si una condición es verdadera.
En el siguiente ejemplo, el programa mostrará el mensaje "Usted fue reprobado" solo si la variable media tiene un valor menor a 4.9.
De lo contrario, mostrará "Usted fue aprobado".
media = 5
if media < 4.9:
print("Usted fue reprobado")
else:
print("Usted fue aprobado")
Se utiliza if/elif/else cuando se necesitan verificar múltiples condiciones. Imagina que necesitamos verificar si un estudiante fue reprobado o si tiene que hacer un examen de recuperación. Tendríamos un escenario similar al siguiente:
media = 6
if media < 5:
print("Usted fue reprobado")
elif 5 <= media < 7:
print("Usted hará el examen de recuperación")
else:
print("Usted fue aprobado")
Primero, se verifica si la media del estudiante es menor a 5. Si es así, se muestra el mensaje "Usted fue reprobado". Si esta condición es falsa, se verifica si el estudiante fue aprobado o si debe hacer un examen de recuperación. Para ello, se utiliza elif
para evaluar si la media está entre 5 y 7. Si es verdadero, se muestra el mensaje "Usted hará el examen de recuperación". Si las condiciones del if
y elif
son falsas, se ejecuta el código del else y se muestra el mensaje "Usted fue aprobado".
Las estructuras de repetición se utilizan cuando queremos que un bloque de código se ejecute varias veces. En Python, podemos hacer esto de dos formas: utilizando for o while.
Utilizamos el for cuando queremos iterar sobre un bloque de código un número determinado de veces.
for i in range(1, 10):
print(i)
Salida:
1
2
3
4
5
6
7
8
9
La otra forma de repetir la ejecución de un fragmento de código hasta que se cumpla una condición es utilizar el while. Es decir, es necesario que una expresión booleana dada sea verdadera. Una vez que se vuelva falsa, el while
se detiene.
gastos = 0
valor_gasto = 0
while gastos < 1000:
valor_gasto = int(input("Ingrese el valor gastado: "))
gastos = gastos + valor_gasto
print(gastos)
Ingrese el valor del nuevo gasto: 20
Ingrese el valor del nuevo gasto: 500
Ingrese el valor del nuevo gasto: 480
1000
Un framework de Python es un conjunto de paquetes y módulos que facilitan y aceleran la programación. Proporcionan una serie de herramientas necesarias al desarrollar una aplicación.
La encuesta "Resultados de la Encuesta a Desarrolladores de Python 2021" nos muestra los siguientes resultados sobre los frameworks y bibliotecas más utilizados:
"Flask, Django y FastAPI siguen siendo los 3 principales frameworks web de Python. FastAPI, lanzado inicialmente a fines de 2018, es el que experimenta un crecimiento más rápido, habiendo aumentado 9 puntos porcentuales en comparación con el año anterior. Al mismo tiempo, en comparación con 2020, la proporción de usuarios de Flask ha disminuido en 5 puntos porcentuales".
En este artículo has aprendido más sobre Python, entendiendo un poco por qué se considera un lenguaje versátil, dinámico y fácil de aprender, además de tener una idea de su historia.
También has visto algunos conceptos básicos del lenguaje, que te ayudaran a saber comenzar en este lenguaje.
Caroline Carvalho
Estudiante de Ingeniería Informática y análisis y desarrollo de sistemas. Soy parte del Scuba Team de Alura BR, exploradora del universo de Python, y también me gusta mucho DevOps. En mi tiempo libre me gusta hablar de cultura friki y café.
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Puedes realizar el pago de tus planes en moneda local en los siguientes países:
País | |||||||
---|---|---|---|---|---|---|---|
Plan Semestral |
487.37
BOB |
69289.36
CLP |
307472.10
COP |
65.90
USD |
264.35
PEN |
1435.53
MXN |
2978.57
UYU |
Plan Anual |
738.82
BOB |
105038.04
CLP |
466107.17
COP |
99.90
USD |
400.74
PEN |
2176.17
MXN |
4515.32
UYU |
Acceso a todos
los cursos
Estudia las 24 horas,
dónde y cuándo quieras
Nuevos cursos
cada semana