Sintaxis de Python: aprende a escribir tus primeras instrucciones
Domina la sintaxis de Python desde cero: variables, operadores, funciones, condicionales y reglas para nombrar. Segundo tutorial de la serie Primeros pasos con Python.
Introducción
Aprender la sintaxis de un lenguaje de programación tiene varias similitudes con aprender un idioma.
Cuando comenzamos a estudiar una lengua, primero conocemos algunas palabras y reglas básicas. Después observamos cómo se combinan para construir oraciones que otras personas puedan comprender.
En programación sucede algo parecido. Para comunicarnos con una computadora debemos aprender a organizar palabras, símbolos y valores de una manera que el lenguaje de programación pueda interpretar.
En Python, el conjunto de reglas que determina cómo se escribe el código recibe el nombre de sintaxis.
¿Qué es la sintaxis de Python?
La sintaxis establece la forma correcta de escribir las instrucciones de un programa.
Por ejemplo, podemos utilizar la función print() para mostrar un mensaje:
print("Hola, Python") En esta instrucción:
printes el nombre de una función.- Los paréntesis contienen la información que queremos mostrar.
- Las comillas indican que
Hola, Pythones un texto.
Si escribimos la instrucción de manera incorrecta, Python no podrá interpretarla:
print("Hola, Python" En este caso falta cerrar el paréntesis. Al ejecutar el código, Python mostrará un error de sintaxis.
La sintaxis nos indica cómo escribir el código. La semántica, en cambio, corresponde al significado y resultado de ese código.
La práctica es parte del aprendizaje
La programación no se aprende únicamente leyendo conceptos. También es necesario escribir código, ejecutarlo, cometer errores y corregirlo.
Podemos compararlo con entrenar en un gimnasio. La fuerza no se desarrolla con una única sesión, sino mediante la práctica constante y progresiva.
Lo mismo ocurre al programar:
- Escribes una pequeña instrucción.
- Ejecutas el código.
- Observas el resultado.
- Identificas posibles errores.
- Modificas el programa.
- Vuelves a ejecutarlo.
Los ejercicios iniciales pueden parecer sencillos, pero permiten desarrollar habilidades que posteriormente serán necesarias para resolver problemas más complejos.
Elementos básicos de la sintaxis de Python
Al igual que un idioma utiliza sustantivos, verbos y conectores, Python dispone de diferentes elementos para construir instrucciones.
Entre los más importantes se encuentran:
- Variables.
- Palabras reservadas.
- Operadores.
- Expresiones.
- Funciones.
- Condicionales.
A continuación, revisaremos cada uno mediante ejemplos sencillos.
Variables
Una variable permite almacenar un dato para utilizarlo posteriormente.
nombre = "Paula"
edad = 28 En este ejemplo:
nombrealmacena el texto"Paula".edadalmacena el número28.- El símbolo
=asigna un valor a una variable.
Podemos mostrar estos valores mediante print():
nombre = "Paula"
edad = 28
print(nombre)
print(edad) También podemos incorporarlos dentro de un mensaje utilizando una cadena formateada o *f-string*:
nombre = "Paula"
edad = 28
print(f"{nombre} tiene {edad} años.") El resultado será:
Paula tiene 28 años. Imagen sugerida: captura del código y su resultado en una terminal o en Visual Studio Code.
Palabras reservadas de Python
Las palabras reservadas, también llamadas *keywords*, tienen un significado especial dentro del lenguaje.
Algunos ejemplos son:
if
else
elif
for
while
in
not
or
def
return Estas palabras forman parte de la sintaxis de Python y no deberían utilizarse como nombres de variables.
Por ejemplo, el siguiente código es incorrecto:
for = 10 for está reservado para crear ciclos o repeticiones. Por esa razón, Python mostrará un error si intentamos utilizarlo como una variable.
Un nombre válido sería:
cantidad = 10 Operadores
Los operadores son símbolos que permiten realizar operaciones con valores y variables.
### Operadores aritméticos
| Operador | Operación | Ejemplo |
|---|---|---|
| `+` | Suma | `8 + 2` |
| `-` | Resta | `8 - 2` |
| `*` | Multiplicación | `8 * 2` |
| `/` | División | `8 / 2` |
| `**` | Potencia | `8 ** 2` |
| `%` | Resto de una división | `8 % 3` |
| `//` | División entera | `8 // 3` |
Podemos probarlos directamente:
print(8 + 2)
print(8 - 2)
print(8 * 2)
print(8 / 2) ### Operadores de comparación
Los operadores de comparación permiten comparar dos valores.
| Operador | Significado |
|---|---|
| `>` | Mayor que |
| `<` | Menor que |
| `>=` | Mayor o igual que |
| `<=` | Menor o igual que |
| `==` | Igual a |
| `!=` | Diferente de |
Por ejemplo:
edad = 20
print(edad >= 18) El resultado será:
True Python responde True porque 20 es mayor o igual que 18.
Es importante distinguir entre los operadores = y ==:
edad = 20 Un solo signo = asigna un valor.
edad == 20 Dos signos == comparan dos valores.
Expresiones
Una expresión es una combinación de valores, variables y operadores que Python evalúa para obtener un resultado.
precio = 12000
cantidad = 3
total = precio * cantidad La expresión precio * cantidad produce el valor 36000, que se almacena en la variable total.
Podemos mostrarlo de la siguiente manera:
precio = 12000
cantidad = 3
total = precio * cantidad
print(f"El total de la compra es ${total}.") También podemos construir expresiones más completas:
precio = 12000
cantidad = 3
descuento = 5000
total = precio * cantidad - descuento
print(f"Total con descuento: ${total}") Funciones
Una función es un bloque de código creado para realizar una tarea específica.
Python incluye funciones incorporadas, como:
print()
input()
type()
len() También podemos crear nuestras propias funciones utilizando la palabra reservada def.
### Ejemplo: calcular el total de una compra
def calcular_total(precio, cantidad):
return precio * cantidad La función recibe dos valores:
- El precio de un producto.
- La cantidad que se desea comprar.
Después multiplica ambos valores y devuelve el resultado mediante return.
Podemos utilizarla así:
def calcular_total(precio, cantidad):
return precio * cantidad
total = calcular_total(4990, 3)
print(f"El total de la compra es ${total}.") El resultado será:
El total de la compra es $14970. Este ejemplo permite observar claramente qué datos recibe una función y qué resultado devuelve.
Condicionales
Los condicionales permiten que un programa tome decisiones.
Python utiliza principalmente las palabras:
if: comprueba una primera condición.elif: comprueba una condición adicional.else: se ejecuta cuando las anteriores no se cumplen.
### Ejemplo: comprobar disponibilidad de un producto
stock = 4
if stock > 0:
print("El producto está disponible.")
elif stock == 0:
print("El producto se encuentra agotado.")
else:
print("El valor del stock no es válido.") Como stock contiene el número 4, el programa mostrará:
El producto está disponible. Podemos modificar su valor para comprobar los demás resultados:
stock = 0 En ese caso, se mostrará:
El producto se encuentra agotado. ### La indentación es importante
En Python, los espacios iniciales determinan qué instrucciones pertenecen a cada bloque.
Este código está correctamente indentado:
edad = 20
if edad >= 18:
print("La persona es mayor de edad.") El siguiente código es incorrecto:
edad = 20
if edad >= 18:
print("La persona es mayor de edad.") La instrucción print() debería estar desplazada hacia la derecha. Python utiliza normalmente cuatro espacios para representar cada nivel de indentación.
Imagen sugerida: comparación visual entre un bloque correctamente indentado y otro con un error.
Errores de sintaxis
Python muestra un error de sintaxis cuando encuentra una instrucción que no cumple las reglas del lenguaje.
Por ejemplo:
print(Este código producirá un error) El texto no está entre comillas. Python intentará interpretar cada palabra como parte del código y no como un mensaje.
La versión correcta es:
print("Este código funciona correctamente") Otro error frecuente es olvidar cerrar las comillas:
print("Bienvenido a Python) La versión correcta es:
print("Bienvenido a Python") Los errores no son una señal de fracaso. Son mensajes que entregan información sobre aquello que debemos revisar.
Incluso los desarrolladores experimentados encuentran errores de sintaxis, lógica o ejecución. La diferencia se encuentra en aprender a interpretar esos mensajes y seguir un proceso ordenado para corregirlos.
Reglas para nombrar variables y funciones
Los nombres utilizados en Python deben cumplir ciertas reglas.
### No pueden contener espacios
Esto es incorrecto:
nombre usuario = "Paula" Podemos utilizar un guion bajo:
nombre_usuario = "Paula" ### No pueden comenzar con un número
Esto es incorrecto:
2usuarios = 10 Una alternativa válida es:
usuarios_2 = 10 ### Pueden contener letras, números y guiones bajos
producto_1 = "Teclado"
precio_producto = 24990 ### Python distingue entre mayúsculas y minúsculas
Estas variables son diferentes:
nombre = "Paula"
Nombre = "Carlos" Aunque ambas son válidas, mezclar mayúsculas y minúsculas de esa manera puede provocar confusión.
Utiliza nombres descriptivos
Un nombre debería comunicar claramente qué representa una variable o qué tarea realiza una función.
Este código funciona, pero es difícil de interpretar:
p = 15000
c = 4
t = p * c Una versión más clara sería:
precio_unitario = 15000
cantidad_productos = 4
total_compra = precio_unitario * cantidad_productos Los nombres descriptivos ayudan a:
- Comprender el código con mayor rapidez.
- Reducir errores.
- Facilitar el trabajo en equipo.
- Retomar un proyecto después de un tiempo.
- Mantener y modificar el programa.
La convención snake_case
Python recomienda escribir los nombres de variables y funciones utilizando la convención snake_case.
En esta convención:
- Se utilizan letras minúsculas.
- Las palabras se separan mediante guiones bajos.
Ejemplos:
nombre_completo = "Paula Martínez"
precio_final = 19990
cantidad_disponible = 8 También se utiliza en funciones:
def calcular_precio_final():
pass La guía de estilo PEP 8 recomienda este formato para los nombres de variables y funciones.
Primer ejercicio práctico
Crea un programa que determine si una persona puede acceder a un curso según su edad.
El programa debe:
- Solicitar el nombre.
- Solicitar la edad.
- Comprobar si la edad es igual o superior a 16.
- Mostrar un mensaje personalizado.
Puedes comenzar con este código:
nombre = input("Ingresa tu nombre: ")
edad = int(input("Ingresa tu edad: "))
if edad >= 16:
print(f"{nombre}, puedes inscribirte en el curso.")
else:
print(f"{nombre}, todavía no cumples la edad mínima.") Prueba el programa utilizando diferentes edades y observa cómo cambia el resultado.
### Desafío adicional
Agrega una condición especial para indicar que el dato no es válido cuando la edad sea negativa:
nombre = input("Ingresa tu nombre: ")
edad = int(input("Ingresa tu edad: "))
if edad < 0:
print("La edad ingresada no es válida.")
elif edad >= 16:
print(f"{nombre}, puedes inscribirte en el curso.")
else:
print(f"{nombre}, todavía no cumples la edad mínima.") Buenas prácticas iniciales
Al escribir tus primeros programas:
- Utiliza nombres descriptivos.
- Respeta la indentación.
- Escribe las cadenas de texto entre comillas.
- No utilices palabras reservadas como variables.
- Prueba el código después de cada modificación.
- Lee completamente los mensajes de error.
- Practica modificando los ejemplos.
- Evita copiar código sin comprender qué hace.
La mejor manera de familiarizarse con la sintaxis es observar código, escribirlo y experimentar con sus valores.
Conclusión
La sintaxis es el conjunto de reglas que permite construir instrucciones que Python pueda interpretar.
En este tutorial conocimos:
- Variables para almacenar datos.
- Palabras reservadas con funciones especiales.
- Operadores para realizar cálculos y comparaciones.
- Expresiones que producen resultados.
- Funciones que agrupan instrucciones reutilizables.
- Condicionales que permiten tomar decisiones.
- Reglas para nombrar variables y funciones.
- Errores de sintaxis y cómo comenzar a interpretarlos.
Comprender estos elementos permitirá avanzar hacia el siguiente tema: los tipos de datos de Python y la forma correcta de trabajar con texto y números.