Python - Sintaxis básica
Página anteriorPágina siguiente
El lenguaje Python tiene muchas similitudes con Perl, C y Java. Sin embargo, existen algunas diferencias definidas entre los idiomas.
Primer programa Python
Ejecutemos programas en diferentes modos de programación.
Programación en Modo Interactivo
Al invocar al intérprete sin pasar un archivo de script como parámetro, aparece el siguiente mensaje −
$ python Python 2.4.3 (#1, Nov 11 2010, 13:34:43) [GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
Escriba el siguiente texto en el indicador de Python y presione Enter −
>>> print "Hello, Python!"
Si está ejecutando una nueva versión de Python, entonces necesitará usar una declaración de impresión con paréntesis como en imprimir ("¡Hola, Python!"); . Sin embargo, en la versión 2.4.3 de Python, esto produce el siguiente resultado −
Hello, Python!
Programación en modo script
La invocación del intérprete con un parámetro de secuencia de comandos inicia la ejecución de la secuencia de comandos y continúa hasta que finaliza. Cuando finaliza el script, el intérprete ya no está activo.
Escribamos un programa Python simple en un script. Los archivos de Python tienen la extensión .py . Escriba el siguiente código fuente en un archivo test.py −
Demostración en vivoprint "Hello, Python!"
Suponemos que tiene configurado el intérprete de Python en la variable PATH. Ahora, intente ejecutar este programa de la siguiente manera −
$ python test.py
Esto produce el siguiente resultado −
Hello, Python!
Probemos otra forma de ejecutar un script de Python. Aquí está el archivo test.py modificado −
Demostración en vivo#!/usr/bin/python print "Hello, Python!"
Suponemos que tiene un intérprete de Python disponible en el directorio /usr/bin. Ahora, intente ejecutar este programa de la siguiente manera −
$ chmod +x test.py # This is to make file executable $./test.py
Esto produce el siguiente resultado −
Hello, Python!
Identificadores de Python
Un identificador de Python es un nombre utilizado para identificar una variable, función, clase, módulo u otro objeto. Un identificador comienza con una letra de la A a la Z o de la a a la z o un guión bajo (_) seguido de cero o más letras, guiones bajos y dígitos (0 a 9).
Python no permite caracteres de puntuación como @, $ y % dentro de los identificadores. Python es un lenguaje de programación sensible a mayúsculas y minúsculas. Así, mano de obra y mano de obra son dos identificadores diferentes en Python.
Aquí están las convenciones de nomenclatura para los identificadores de Python −
-
Los nombres de las clases comienzan con una letra mayúscula. Todos los demás identificadores comienzan con una letra minúscula.
-
Comenzar un identificador con un solo guión bajo inicial indica que el identificador es privado.
-
Comenzar un identificador con dos guiones bajos al principio indica un identificador fuertemente privado.
-
Si el identificador también termina con dos guiones bajos al final, el identificador es un nombre especial definido por el idioma.
Palabras reservadas
La siguiente lista muestra las palabras clave de Python. Estas son palabras reservadas y no puede usarlas como constantes o variables o cualquier otro nombre identificador. Todas las palabras clave de Python solo contienen letras minúsculas.
y | ejecutivo | no |
afirmar | finalmente | o |
descanso | para | pasar |
clase | de | imprimir |
continuar | globales | aumentar |
definido | si | volver |
del | importar | intentar |
elif | en | mientras |
otro | es | con |
excepto | lambda | rendimiento |
Líneas y sangría
Python no proporciona llaves para indicar bloques de código para definiciones de clase y función o control de flujo. Los bloques de código se indican mediante sangría de línea, que se aplica estrictamente.
El número de espacios en la sangría es variable, pero todas las declaraciones dentro del bloque deben tener la misma cantidad de sangría. Por ejemplo −
if True: print "True" else: print "False"
Sin embargo, el siguiente bloque genera un error −
if True: print "Answer" print "True" else: print "Answer" print "False"
Así, en Python todas las líneas continuas sangradas con el mismo número de espacios formarían un bloque. El siguiente ejemplo tiene varios bloques de declaraciones −
Nota − No trate de entender la lógica en este momento. Solo asegúrese de haber entendido varios bloques, incluso si no tienen llaves.
#!/usr/bin/python import sys try: # open file stream file = open(file_name, "w") except IOError: print "There was an error writing to", file_name sys.exit() print "Enter '", file_finish, print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: # close the file file.close break file.write(file_text) file.write("\n") file.close() file_name = raw_input("Enter filename: ") if len(file_name) == 0: print "Next time please enter something" sys.exit() try: file = open(file_name, "r") except IOError: print "There was an error reading file" sys.exit() file_text = file.read() file.close() print file_text
Estados de cuenta de varias líneas
Las declaraciones en Python normalmente terminan con una nueva línea. Sin embargo, Python permite el uso del carácter de continuación de línea (\) para indicar que la línea debe continuar. Por ejemplo −
total = item_one + \ item_two + \ item_three
Las declaraciones contenidas dentro de los corchetes [], {} o () no necesitan usar el carácter de continuación de línea. Por ejemplo −
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
Cotización en Python
Python acepta comillas simples ('), dobles (") y triples (''' o """) para indicar cadenas literales, siempre que el mismo tipo de comillas comience y finalice la cadena.
Las comillas triples se utilizan para abarcar la cadena en varias líneas. Por ejemplo, todos los siguientes son legales −
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences."""
Comentarios en Python
Un signo de almohadilla (#) que no está dentro de un literal de cadena comienza un comentario. Todos los caracteres después del # y hasta el final de la línea física son parte del comentario y el intérprete de Python los ignora.
Demostración en vivo#!/usr/bin/python # First comment print "Hello, Python!" # second comment
Esto produce el siguiente resultado −
Hello, Python!
Puede escribir un comentario en la misma línea después de una declaración o expresión −
name = "Madisetti" # This is again comment
Puede comentar varias líneas de la siguiente manera −
# This is a comment. # This is a comment, too. # This is a comment, too. # I said that already.
El intérprete de Python también ignora la siguiente cadena entre comillas triples y se puede usar como comentarios de varias líneas:
''' This is a multiline comment. '''
Uso de líneas en blanco
Una línea que contiene solo espacios en blanco, posiblemente con un comentario, se conoce como línea en blanco y Python la ignora por completo.
En una sesión de interpretación interactiva, debe ingresar una línea física vacía para finalizar una declaración de varias líneas.
Esperando al Usuario
La siguiente línea del programa muestra el mensaje, la declaración que dice "Presione la tecla Intro para salir", y espera a que el usuario tome medidas −
#!/usr/bin/python raw_input("\n\nPress the enter key to exit.")
Aquí, "\n\n" se usa para crear dos nuevas líneas antes de mostrar la línea real. Una vez que el usuario presiona la tecla, el programa finaliza. Este es un buen truco para mantener abierta una ventana de la consola hasta que el usuario termine con una aplicación.
Múltiples estados de cuenta en una sola línea
El punto y coma (; ) permite varias declaraciones en una sola línea dado que ninguna de ellas inicia un nuevo bloque de código. Aquí hay un recorte de muestra usando el punto y coma −
import sys; x = 'foo'; sys.stdout.write(x + '\n')
Grupos de extractos múltiples como suites
Un grupo de declaraciones individuales, que forman un solo bloque de código, se denominan suites. en Python. Las declaraciones compuestas o complejas, como if, while, def y class requieren una línea de encabezado y una suite.
Las líneas de encabezado comienzan la declaración (con la palabra clave) y terminan con dos puntos (:) y son seguidas por una o más líneas que componen la suite. Por ejemplo −
if expression : suite elif expression : suite else : suite
Argumentos de línea de comando
Se pueden ejecutar muchos programas para brindarle información básica sobre cómo deben ejecutarse. Python te permite hacer esto con -h −
$ python -h usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... Options and arguments (and corresponding environment variables): -c cmd : program passed in as string (terminates option list) -d : debug output from parser (also PYTHONDEBUG=x) -E : ignore environment variables (such as PYTHONPATH) -h : print this help message and exit [ etc. ]
También puede programar su script de tal manera que acepte varias opciones. Argumentos de la línea de comandos es un tema avanzado y debe estudiarse un poco más adelante una vez que haya repasado el resto de los conceptos de Python.
python