Hablaremos en detalle del desempaquetado en el capítulo siguiente, en la sección titulada Operaciones y funciones integradas utilizables con los objetos iterables.
La instrucción pass
La palabra clave pass es una instrucción simple que no ejecuta nada. Cuando se localiza, se omite y la ejecución continúa con la instrucción siguiente:
La instrucción del
La instrucción del elimina una o más etiquetas:
La instrucción return
La instrucción return, que se utiliza solo en el interior de una función, sirve para devolver de forma explícita al que realiza la llamada el resultado de la función:
Si una función no devuelve explícitamente un objeto al que realiza la llamada, se devuelve implícitamente el objeto None, la única instancia del tipo NoneType:
La instrucción import
La instrucción import sirve para importar módulos:
Veremos de manera detallada la instrucción import en el tercer capítulo, cuando hablemos de los módulos.
La instrucción from
La instrucción from se utiliza para importar atributos de un módulo:
La instrucción from tiene distintas variantes, que veremos en el Capítulo 4.
La instrucción assert
La instrucción assert genera una excepción del tipo AssertionError si su expresión de prueba se valora como False; si no, no hace nada:
Veremos más detalladamente esta instrucción en el Capítulo 5, cuando hablemos de las excepciones.
Instrucciones compuestas
La instrucción compuesta está formada por una o más palabras clave, denominadas cláusulas, cada una de las cuales tiene asociada una suite de instrucciones. Las cláusulas terminan con el signo de dos puntos, después del cual empieza la suite:
Como ya sabemos, generalmente la suite se escribe en un bloque de código indentado, con una instrucción por línea:
Las cláusulas tienen todas el mismo nivel de indentación, como podemos observar en el siguiente ejemplo, que muestra la instrucción if y su cláusula else:
En esta sección mostraremos el modo en que se utilizan las tres principales instrucciones compuestas: if, for y while.
La instrucción if
En Python existen dos herramientas que permiten emprender distintas acciones basándose en el resultado de una prueba de la verdad. La primera es la expresión condicional, de la cual ya hemos hablado, mientras que la segunda es la instrucción compuesta if, con las cláusulas elif y else. Su forma general es la siguiente:
y este es un ejemplo de su uso:
En Python no existe una instrucción para las elecciones múltiples parecida a la switchcase típica de otros lenguajes (ver PEP-0275 y PEP-3103). Esta elección se debe al hecho de que es posible obtener de manera obvia el mismo resultado con la instrucción if y, como ya sabemos, “there should be one - and preferably only one - obvious way to do it”.
Es posible obtener la opción -case también con los diccionarios, probablemente de manera menos intuitiva respecto a la correspondiente codificación con la instrucción if:
La instrucción for
La instrucción for permite ejecutar iteraciones:
Los elementos del objeto iterable también pueden ser desempaquetados:
Cuando en el interior de un bucle for se ejecuta la instrucción simple continue, el resto de instrucciones del bloque son saltadas y la ejecución se retoma a partir de la línea que contiene la palabra clave for:
La instrucción simple break termina la ejecución del bucle for:
También es posible utilizar la cláusula else, la cual se ejecuta si sale del bucle sin encontrar la instrucción break:
En la sección Objetos iterables, iteraciones y contexto de iteración, al final de este capítulo, describiremos detalladamente los mecanismos en que se basa el protocolo de iteración.
La instrucción while
La instrucción while permite ejecutar bucles infinitos:
Podemos utilizar continue, break y la cláusula else del mismo modo en que se utiliza la instrucción for.
Los módulos como contenedores de instrucciones
Acabamos de ver que las expresiones están incluidas en las instrucciones. Estas, a su vez, están incluidas en el interior de módulos Python. Los módulos Python son archivos que contienen ninguna (un archivo vacío, el módulo