OpenWebinars

Lenguajes de Programación

Primeros pasos en la programación con Python

Te proponemos una sólida introducción a la programación con Python, con conceptos básicos que abordar a medida que des los primeros pasos con el lenguaje.

Guillermo Ramiro Maquieira

Guillermo Ramiro Maquieira

Lectura 9 minutos

Publicado el 22 de febrero de 2023

Compartir

Python es el lenguaje de programación más popular y versátil que se utiliza en una variedad de campos, como la ciencia de datos, la inteligencia artificial, la automatización de tareas hasta el desarrollo web. Según la Developer Survey de Stack Overflow, aprender Python te ayudará a obtener una ventaja competitiva en el mercado laboral. Además, su sintaxis es clara y legible, lo que lo hace fácil de entender para aquellas personas que comienzan a dar sus primeros pasos en el mundo de la programación.

En este artículo, encontrarás una introducción sólida a la programación con Python, incluyendo conceptos básicos para ir abordando a medida que se dan los primeros pasos con el lenguaje.

Orígenes de Python

A fines de la década de los 80, su creador, Guido van Rossum comenzó a trabajar en su intérprete principal siendo vigente su participación (entre otras ocupaciones) hasta el día de hoy. Sin embargo, el desarrollo principal del lenguaje lo realiza su comunidad, una de sus características que desarrollaremos más adelante.

Las razones de que hoy en día sea un lenguaje de programación tan popular puede estar relacionada con la propuesta titulada “Computer Programming for Everybody” (Programación en computadoras para todos) que Van Rossum realizó en 1999 en la que sostuvo los principios de un lenguaje fácil, intuitivo, de código abierto y uso diario. Para mayor detalle de la propuesta se puede visitar el siguiente enlace.

Conviértete en un Backend Developer
Domina los lenguajes de programación más demandados. Accede a cursos, talleres y laboratorios para crear proyectos con Java, Python, PHP, Microsoft .NET y más
Comenzar gratis ahora

Conceptos básicos

El primer programa generado con Python desde cero, o bien, con cualquier otro lenguaje de programación tendrá como objetivo dar instrucciones a una computadora a partir de un conjunto de instrucciones. Para comprender estas instrucciones es necesario aclarar determinados tópicos de Python para principiantes que veremos a continuación.

Suele haber muchas preguntas en lo que refiere a la programación Python desde cero, más precisamente como aprender o programar Python desde cero, que se desarrollarán a lo largo de este artículo.

Hola Mundo

Se conoce como “Hola Mundo” a la primera instrucción que se escribe en un lenguaje de programación. En el caso de Python, sigue la siguiente forma:

print("Hola Mundo")

En el bloque de código previo se destacan dos elementos:

  • print() es una función propia del lenguaje que muestra un mensaje por pantalla.
  • “Hola Mundo” es el texto que se mostrará por pantalla.

El resultado que se mostrará por pantalla será:

Hola Mundo

Variables

Las variables son un espacio de memoria que almacenan un determinado valor, pudiendo ser de tipo numérico o texto. Considerando el ejemplo anterior de “Hola Mundo” podría adaptarse el mensaje que se muestra por pantalla de forma tal que se encuentre contenido en una variable de tipo texto y luego ser mostrado por pantalla. El código resultante sería el siguiente:

mensaje = "Hola Mundo"
print(mensaje)

Empezando con Python pueden probarse ambos códigos previos en el siguiente enlace que es un intérprete en línea del lenguaje. En caso de que se desee empezar con Python instalando el intérprete de manera local puede visitarse el siguiente enlace.

En ambos casos, el resultado que se mostrará por pantalla será:

Hola Mundo

Tipos de Variables

Como hemos visto anteriormente, una variable puede ser de tipo numérico o texto. En el siguiente código pueden verse dos variables, nombre y edad, con un valor asignado y luego siendo mostradas por pantalla.

nombre = "Juan"
edad = 25

print(nombre,edad)

Las variables de tipo texto llevan comillas dobles al principio y fin de la cadena de texto. Por el contrario, a las variables de tipo numérica se les asocia directamente el número en cuestión. El operador “=” significa una asignación entre la expresión del lado izquierdo, siendo el nombre de la variable, y su contenido del lado derecho. La función print() que recibe como parámetros, entre sus paréntesis, las variables nombre y edad mostrará sus contenidos separados por un espacio:

Juan 25

Expresiones lógicas

Una expresión lógica representa su valor con dos valores posibles:

  • Verdadero (True)
  • Falso (False)

Considerando el ejemplo anterior, el siguiente código mostrará en primer lugar True (Verdadero) puesto que 25 es mayor a 18. Por el contrario, debido a que 25 no es mayor a 18, se mostrará False (Falso) en segundo lugar.

edad = 25

print(edad > 18)
print(edad < 18)

El resultado que se mostrará por pantalla será:

True
False

Expresión condicional

La palabra reservada “if” (Si) representa la evaluación de una expresión lógica, que puede ser Verdadera o Falsa, a partir de la cual se tomará un curso de acción. Su definición básica es la siguiente:

if (condicion):
   accion

En el paréntesis puede haber una o más condiciones que representen un valor verdad siendo este Verdadero o Falso. En caso de que el mismo sea Verdadero, se ejecutará la acción inmediata posterior, siendo esta una representación elemental de la expresión condicional. Como se detalló anteriormente, dicha expresión puede contener más de una condición al mismo tiempo y ejecutar múltiples acciones. En el siguiente bloque de código puede verse que si se cumplen las condiciones 1 y 2 se ejecutarán las acciones a y b:

if (condicion_1 y condicion_2):
   accion_a
   accion_b

Para ilustrar el concepto es posible reutilizar el ejemplo previo bajo la siguiente forma:

edad = 25

if (edad > 18):
   print("Es mayor de edad.")

Puesto que (25 > 18) resulta una expresión lógica que retorna el valor Verdadero, se ejecuta la acción inmediata posterior, resultando el siguiente mensaje por pantalla:

Es mayor de edad.

¿Qué sucediera si la variable edad contiene un valor menor a 18? Puesto que la condición sería Falsa, no se mostraría mensaje alguno por pantalla. Sin embargo, es posible agregar un curso de acción adicional con la palabra reserva “else” (Sino) a fin de contemplar ambos posibles casos. A partir del siguiente bloque de código, como una adaptación del ejemplo anterior:

edad = 5

if (edad > 18):
   print("Es mayor de edad.")
else:
   print("Es menor de edad.")

Puesto que (5 < 18) resulta una expresión lógica que retorna el valor Falso, no se ejecuta la acción inmediata posterior, sino que la alternativa, resultando el siguiente mensaje por pantalla:

Es menor de edad.

Los ejemplos anteriores pueden verificarse transcribiendo y ejecutando cada bloque de código en el siguiente enlace.

Operaciones matemáticas

De igual forma que en el uso de una calculadora, el lenguaje soporta distintas operaciones matemáticas entre dos o más variables de tipo numérico. Considerando las variables numéricas n1 y n2 se muestra por pantalla el resultado de operaciones básicas matemáticas:

n1 = 6
n2 = 2

print(n1+n2)
print(n1-n2)
print(n1*n2)
print(n1//n2)

El bloque de código anterior mostrará por pantalla el siguiente resultado:

8
4
12
3

Es posible agregar un texto descriptivo, que brinde mayor información, de forma previa al resultado:

n1 = 6
n2 = 2

print("La suma es:", n1+n2)
print("La resta es:", n1-n2)
print("La multiplicación es:", n1*n2)
print("La división es:", n1//n2)

Listas

Una lista es una estructura de datos que permite almacenar múltiples valores ya sean de tipo numérico o texto. A continuación, se muestran diferentes ejemplos:

numeros = [5, 15, 20, 3, 2, 1]
personas = ["Juan", "Ana", "Luis", "Florencia"]

Cada una de estas listas, con la particularidad de que al igual que las variables, cada texto lleva unas comillas dobles al principio y final mientras que los números simplemente van separados por coma. Se puede recorrer (iterar) sobre las mismas utilizando la palabra reservada “for”:

numeros = [5, 15, 20, 3, 2, 1]

for numero in numeros:
   print(numero)

El bloque de código anterior mostrará por pantalla el siguiente listado:

5
15
20
3
2
1

Su recorrido (iteración) se realiza de forma implícita puesto que debe leerse como mostrar cada número (print) dentro de la lista de números (for numero in numeros). En el caso contrario, se puede iterar sobre la misma, haciendo referencia a cada una de las posiciones de la lista lo cual involucra los conceptos de longitud (len) y rango (range):

numeros = [5, 15, 20, 3, 2, 1]

print("La longitud de la lista es:", len(numeros))

for i in range(len(numeros)):
  print("En la posición",i,"esta el valor",numeros[i])

La función len() mostrará la longitud de lo que reciba como parámetro, en el caso de len(numeros) será 6 puesto que la lista llamada números contiene seis elementos con la particularidad de que los mismos se encuentran numerados del 0 al 5 en vez del 1 al 6:

La longitud de la lista es: 6

En la posición 0 esta el valor 5
En la posición 1 esta el valor 15
En la posición 2 esta el valor 20
En la posición 3 esta el valor 3
En la posición 4 esta el valor 2
En la posición 5 esta el valor 1

A diferencia de la primera iteración, en el caso anterior, la lista se está recorriendo de forma explícita por posición mostrando cada uno de sus elementos.

Bucles

Un bucle es una estructura iterativa a partir de la cual se ejecuta cierto bloque de código una cierta cantidad de veces. Como hemos visto anteriormente, con la palabra reservada “for” es posible mostrar cada uno de los elementos de una lista. Es decir, que el bucle se ejecutará tantas veces como elementos de la lista hayan:

numeros = [5, 15, 20, 3, 2, 1]

for numero in numeros:
   print(numero)

Otra estructura iterativa es while (mientras) que ejecutará cierto bloque de código siempre y cuando se cumpla su condición (Verdadera) lógica. En caso de querer mostrar los números del 1 al 5 puede utilizarse una condición en un bucle while (mientras) que la verifique y proceda en consecuencia:

n = 1

while (n <= 5):
   print(n)
   n = n + 1

El bloque de código anterior mostrará el siguiente resultado:

1
2
3
4
5

Siendo que n es una variable cuyo valor inicial es 1, procede el bucle while (mientras) a verificar si n es menor o igual a 5. Como la condición es Verdadera, ingresa al bucle y ejecuta su primera instrucción que consiste en mostrar el n por pantalla e incrementar posteriormente su valor. Puesto que en la segunda iteración el valor de n es igual a 2, la condición sigue siendo Verdadera (puesto que 2 es menor o igual a 5) por lo cual vuelve a ingresar al bucle, mostrar el valor de n e incrementar su valor.

La explicación previa se ejecuta sucesivamente de tal manera hasta que la condición resulta Falsa. Es decir, al momento en que n incrementa su valor a 6, la condición (6 <= 5) resulta Falsa por lo cual no se ingresa al bucle y al no haber líneas posteriores en el programa, el mismo finaliza su ejecución.

Ejemplo integrador

Todos los conceptos vistos previamente pueden unificarse en un sólo bloque de código a fin de ilustrar la interacción de los temas. Se considera una lista de números a partir de la cual es necesario mostrar, con un mensaje aclaratorio, cuales números son positivos y negativos. El siguiente bloque de código ilustra una posible solución:

numeros = [50, 5, -20, 10, -5]

for numero in numeros:
  if (numero < 0):
    print("El numero", numero, "es negativo.")
  else:
    print("El numero", numero, "es positivo.")

Y tendrá por resultado los siguientes mensajes:

El numero 50 es positivo.
El numero 5 es positivo.
El numero -20 es negativo.
El numero 10 es positivo.
El numero -5 es negativo.

¿Cómo puede explicarse el funcionamiento del código anterior? Leyendo el código e interpretando su lógica asociada, empezando por su primera línea donde se defina una lista denominada numeros que contiene 5 elementos.

Cada uno de estos elementos, obtenidos a partir del bucle iterativo “for” (Para) que se lee como (por cada número dentro de la lista de números) se evalúa con una expresión condicional del tipo “if/else” (Si/Sino) a partir de la cual se ejecutan dos posibles acciones dependiendo si el valor de verdad (Verdadero o Falso) de la comparación de cada número con la expresión que determina si se encuentra por detrás (negativo) o delante (positivo) del número 0.

Los ejemplos anteriores pueden verificarse transcribiendo y ejecutando cada bloque de código en el siguiente enlace.

Conceptos avanzados

Luego de adquirir los conceptos básicos es posible seguir avanzando en la interpretación de nuevos tópicos a partir de la investigación y curiosidad por aprender más acerca del ecosistema en el que Python se encuentra inmerso. Como parte de su filosofía, su comunidad es la que colabora activamente con distintos proyectos para la construcción de software basados en Python.

Existe dos frameworks (entorno de trabajo) muy populares basados en Python, y para conocer algunas de las tantas capacidades que permite el lenguaje, puede visitarse la página oficial de Django y Flask. A pesar de que pueda parecer complejo de interpretar en un principio, conocer parte del ecosistema de un lenguaje de programación, son parte de las investigaciones que una persona puede hacer para saber si en un futuro continuará su camino junto al lenguaje, o bien, la finalidad de mismo es la compresión de los conceptos básicos.

Por el contrario, si la persona desea realizar diferentes cursos para introducirse en el lenguaje, entonces el siguiente párrafo será de su interés.

Mejora las habilidades de tus desarrolladores
Acelera la formación tecnológica de tus equipos con OpenWebinars. Desarrolla tu estrategia de atracción, fidelización y crecimiento de tus profesionales con el menor esfuerzo.
Solicitar más información

Recomendación de cursos y carreras

Existen diferentes cursos introductorios en Python, así como también avanzados, para profundizar en el lenguaje:

Compartir este post

También te puede interesar

Icono de la tecnología
Curso

Python 3 desde cero

Intermedio
6 h. y 8 min.

Descubre el fascinante mundo del lenguaje de programación que funciona como una auténtica navaja suiza cuando se trata...

José Domingo Muñoz
4.5
Icono de la tecnología
Curso

Python 3

Intermedio
10 h. y 16 min.

Tu pasaporte a sabelotodo de Python. Desde las bases hasta la creación de tu primer programa, este curso...

José Domingo Muñoz
4.4