'El resultado de 10 + 20 es 30.'
Permiten almacenar valores en memoria y usarlos en otras partes del programa.
Cada variable tiene un tipo de dato asociado.
Atención
Python es un lenguaje interpretado, esto tiene diferentes consideraciones.
Al usar un intérprete para ejecutar el código:
La imagen ha sido modificada y extraida de un post online en Facebook.
Permiten tomar decisiones en el programa.
Otra forma de verlo
Los condicionales siempre responden a Si ocurre A, entonces haz B, sino C
Encontramos diferentes operadores de comparación en Python. La siguiente tabla los resume:
Operador | Descripción |
---|---|
== | Igual |
!= | Distinto |
> | Mayor que |
< | Menor que |
>= | Mayor o igual que |
<= | Menor o igual que |
Podemos combinar condiciones con los operadores lógicos and
, or
y not
.
Son bloques de código que se pueden reutilizar.
Python tiene funciones predefinidas…
… y también podemos definir nuestras propias funciones
Resumen
Para definir una función, se debe usar la palabra reservada def. Además, una función puede o no retornar un valor. Puede recibir como entrada una serie de argumentos y si se desea retornar un valor, se debe usar la palabra reservada return.
Hay desarrolladores que crean librerías con funciones.
Para usarlas, podemos invocar el módulo, importandolo antes utilizando la palabra reservada import…
… o importar una función específica del modulo.
Consejo
Es recomendable importar únicamente las funciones que se vayan a utilizar para reducir el tiempo de ejecución. A esta técnica se le conoce como selective importing y es una buena práctica de programación.
Las funciones pueden tener argumentos por defecto.
Estos permiten que la función pueda ser llamada omitiendo estos argumentos.
Python tiene tipos de datos más complejos que permiten almacenar de datos mediante colecciones.
Podemos definir una lista de la siguiente forma:
Para acceder a los elementos de una lista, podemos utilizar un índice.
Los corchetes [ ]
se utilizan para acceder a los elementos de una lista.
Para acceder a los elementos de una lista, podemos utilizar un índice.
Atención
Los elementos en una lista se empiezan a numerar desde el 0, como en la mayoría de lenguajes de programación.
Python también permite acceder a los elementos de una lista de forma inversa.
Los índices negativos representan la posición del elemento en la lista de derecha a izquierda.
Una lista se modifica usando un índice.
También podemos añadir nuevos elementos dinamicamente con el método append.
[10, 2, 3, 4]
Una lista se modifica usando un índice.
También podemos añadir nuevos elementos dinamicamente con el método append.
[10, 2, 3, 4]
Python nos permite generar sublistas mediante la sintaxis [inicio:final:incremento]
donde:
inicio
: Primer elemento de la sublista.final
: Elemento que finaliza la sublista (no se incluye).incremento
: Cantidad de elementos que se saltan.Si no definimos el inicio
o el final
, Python asume el extremo inicial y final de la lista respectivamente como valores por defecto.
Si no definimos incremento
se asume un valor de 1.
Nota
Python permite también estipular un incremento negativo para recorrer la lista en sentido inverso.
Python también permite operar entre listas.
Utilizando el operador + se concatenan las listas.
También podemos utilizar el método extend para añadir los elementos de una lista a otra.
Nota
La diferencia entre + y el operador extend es que el primero crea una nueva lista, mientras que el segundo modifica la lista original.
Definimos un diccionario con la sintaxis {clave: valor}
. Donde clave
es el identificador y valor
es el contenido.
A diferencia de las listas, que se acceden mediante un índice, los diccionarios se acceden mediante una clave.
Podemos modificar un valor en un diccionario haciendo uso de la clave.
Para añadir un nuevo elemento al diccionario, simplemente asignamos un nuevo par clave-valor.
Python permite obtener las claves y los valores de un diccionario de diversas maneras.
Los conjuntos son colecciones no ordenadas de elementos únicos.
Utilizamos las llaves { }
para definir un conjunto. A diferencia de los diccionarios, los conjuntos no tienen claves.
Añadimos elementos a un conjunto usando el método add.
Si añadimos un elemento que ya existe, no se añadirá.
Podemos realizar operaciones entre conjuntos similares a las operaciones de conjuntos en matemáticas.
Nota
Nótese que estas operaciones no modifican los conjuntos originales.
No hay una forma sencilla de acceder a los elementos de un conjunto, ya que no hay un orden definido.
¿Cómo accedemos a todos los elementos de un conjunto?
Permiten repetir un segmento de código.
Existen dos tipos de bucles en Python:
while
: Se repite mientras se cumpla una condición.for
: Se repite en base a un elemento iterable.while
for
Atención
La función range genera una secuencia de números. El bucle for
itera sobre cada uno de los elementos de la secuencia. Es necesario que el elemento en el bucle sea un iterable.
Recordando el uso de las funciones, el siguiente código es equivalente al anterior.
Este es un buen ejemplo de cómo las funciones de Python pueden simplificar el código y hacerlo más legible.
En Python las colecciones son iterables, por lo que podemos recorrerlas con un bucle for
.
¿Cómo accedemos a todos los elementos de un conjunto?
En Python las colecciones son iterables, por lo que podemos recorrerlas con un bucle for
.
¿Cómo accedemos a todos los elementos de un conjunto?
Iterando sobre sus elementos.
Las colecciones en Python son iterables, por lo que podemos recorrerlas con un bucle for
.
Los conjuntos no tienen un orden definido, por lo que no podemos asegurar el orden en el que se recorrerán los elementos.
Hemos visto los conceptos básicos de Python. Sabemos cómo almacenar valores en variables y trabajar con diferentes tipos de datos.
Además, hemos aprendido a tomar decisiones en el programa con condicionales y a reutilizar código con funciones.
En la última parte, hemos aprendido a definir a trabajar con tipos de datos complejos como listas, diccionarios y conjuntos.
También se ha visto cómo iterar sobre colecciones con bucles for
y while
y como esto se integra con los conceptos básicos de Python.
Estos son los conceptos básicos de Python. Se recomienda practicar y experimentar con el lenguaje y sus trucos.
En una estación meteorológica, se han recopilado las temperaturas diarias de una ciudad durante una semana. El programa debe procesar esta información para clasificar las temperaturas en días fríos (menos de 15 °C), templados (entre 15 °C y 25 °C) y calurosos (más de 25 °C). Además, debe identificar la temperatura más alta y la más baja registradas. Por último, si la lista de temperaturas está vacía, el programa debe mostrar un mensaje indicando que no hay datos disponibles.
Un librero necesita gestionar su inventario. Los libros deben almacenarse en un diccionario, donde las claves representan los títulos y los valores indican la cantidad de ejemplares disponibles. El programa debe permitir agregar nuevos libros, actualizar el número de ejemplares de un libro existente y calcular el promedio de ejemplares por título. Finalmente, debe mostrar una lista de los títulos que tienen más ejemplares que el promedio. Si algún libro tiene 0 ejemplares, el programa debe mostrar una advertencia.
# archivo.py
inventario = {
"El Quijote": 7,
"Don Juan Tenorio": 5,
"La Celestina": 0
}
añadir_libro(inventario, "El Lazarillo de Tormes")
actualizar_existencias(inventario, "El Quijote", 8)
print(inventario) # Inventario actualizado
promedio_ejemplares(inventario)
mostrar_resumen(inventario)
# consola
>>> {"El Quijote": 8, "Don Juan Tenorio": 5, "El Lazarillo de Tormes": 1, "La Celestina": 0}
>>> Promedio de ejemplares: 3.75
>>> Libros con más ejemplares que el promedio: ["El Quijote", "Don Juan Tenorio"]
>>> Advertencia: "La Celestina" está agotado.
Un editor de noticias necesita analizar los titulares de un informe semanal para identificar las palabras más significativas, entendidas como aquellas que tienen más de 6 letras. El programa debe extraer las palabras relevantes, pasarlas a minúsculas, ordenarlas alfabéticamente y contar cuántas cumplen esta condición. Además, una palabra debe considerarse como relevante solo una vez independientemente de cuantas veces aparezca en los titulares. El editor planea añadir filtros más complejos en el futuro, pero por ahora solo requiere este análisis básico.
# archivo.py
analizar_titulares([
"El presidente anuncia nuevas medidas económicas",
"El ministro de cultura visita la exposición de arte",
"El alcalde inaugura un nuevo parque en la ciudad"
])
# consola
>>> Palabras relevantes: ['alcalde', 'anuncia', 'cultura', 'económicas', 'exposición', 'inaugura', 'medidas', 'ministro', 'presidente']
>>> Total de palabras: 9
Ingeniería del Software para Inteligencia Artificial