El gran libro de Python. Marco Buttu
Чтение книги онлайн.
Читать онлайн книгу El gran libro de Python - Marco Buttu страница 15
y son evaluadas por Python en modo case-sensitive:
En cuanto a las convenciones, es posible consultar la PEP-0008.
Cuando una etiqueta está precedida por el delimitador punto, se dice que está calificada. Por ejemplo, en la expresión sys.platform, decimos que platform es una etiqueta calificada, o también que platform está calificada mediante sys.
Si se desea profundizar en el argumento del análisis lexical del código Python, es aconsejable leer la siguiente página del sitio oficial: http://docs.python.org/3/reference/lexical_analysis.html.
Arquitectura de un programa Python
Un programa Python se compone de módulos, que contienen en su interior instrucciones, las cuales procesan expresiones. En esta sección, describiremos estos tres elementos.
Las expresiones
Hemos dicho que los objetos están generados por el código en ejecución. Tratamos de reducir el campo, individualizando los fragmentos de código que originan la creación de los objetos, o que simplemente se refieren a ellos. Estas partes de código se denominan expresiones. Esta es su definición: una expresión es un fragmento de código contenido en una línea lógica, que cuando el programa se está ejecutando se refiere a un objeto o bien lo genera.
Vamos a intentar entender, mediante ejemplos prácticos, cómo identificar las expresiones. Para ello, consideremos un código ejecutado correctamente, como el siguiente:
Reducimos el campo diciendo que las expresiones se encuentran a la derecha del signo igual y quedan encerradas en el interior de las líneas lógicas. Para descubrir si un fragmento de código es una expresión, podemos extrapolarlo de la línea lógica y asignarlo a una etiqueta. Si la asignación no genera ningún error, entonces el fragmento de código es una expresión; si no, no lo es.
En el proceso de extrapolación del código de la línea lógica, las etiquetas no pueden ser separadas de los paréntesis. Por lo tanto, print('python') no puede ser separada en las partes print y ('python'), y mylist[2] no puede ser dividida en mylist y [2]. Partimos de las cadenas 'p' y 'python':
Estas son expresiones. Veamos el fragmento de código obtenido a partir de su combinación mediante la palabra clave in:
Así, 'p' in 'python' también es una expresión. Veamos el fragmento de código if 'p':
Hemos obtenido un error, lo que significa que if 'p' no es una expresión. Ni la línea lógica por completo es una expresión:
así como el resto de fragmentos de código en el interior de esta línea. Vayamos a la segunda línea:
También print y ('python') son expresiones, pero, como ya hemos dicho, una etiqueta no puede ser separada de los paréntesis que la siguen, por lo cual print('python') es una única expresión y no la combinación de print y ('python'), las cuales, tomadas por separado, tienen su significado atómico:
La siguiente sintaxis define una expresión condicional:
Esta es su forma general:
y devuelve expresión 1 si la expresión test se valora como True; si no, devuelve expresión 2:
A diferencia de otros lenguajes, en Python la asignación no es una expresión:
El hecho de que la asignación no sea una expresión permite evitar que en una prueba de comparación (por ejemplo, a == b) la omisión de un carácter genere un peligroso error lógico (a = b). Encontramos los motivos de esta y otras opciones de diseño en la página http://docs.python.org/3/faq/design.html.
Para más información y detalles acerca de las expresiones y su clasificación, podemos consultar la documentación en el sitio oficial: http://docs.python.org/3/reference/expressions.html.
Las instrucciones
En Python, el código que define una línea lógica por completo se denomina instrucción simple (simple statement), mientras que un bloque de código compuesto por instrucciones simples se denomina instrucción compuesta (compound statement). Las instrucciones compuestas se carácterizan por el uso del delimitador dos puntos, el cual indica el inicio del bloque de código de la instrucción. La unión de las instrucciones simples y de las compuestas constituye el conjunto de las instrucciones de Python.
Las instrucciones tienen un nombre, que procede del de las palabras clave utilizadas en su interior. Por ejemplo, las instrucciones siguientes se denominan instrucción simple import e instrucción compuesta for:
En el transcurso del libro veremos cómo utilizar todas las instrucciones; en esta sección nos limitaremos a estudiar las que nos interesan para los objetivos de este capítulo.
Instrucciones simples
Según la definición anterior, una línea lógica constituida por una expresión es una instrucción simple. Este, evidentemente, es el único caso en que una instrucción es también una expresión. El resultado de esta instrucción no puede ser guardado; por este motivo, una expresión se utiliza como instrucción solo en dos casos. El primero es cuando se utiliza el modo interactivo, puesto que, aunque el resultado de la expresión no sea guardado, este se escribe en la salida estándar y se puede comprobar visualmente:
La otra situación es la de las llamadas funciones y métodos que no devuelven explícitamente un objeto, puesto que en estos casos interesa solo que se ejecuten las acciones y no se obtiene ningún resultado que guardar: