Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Dominando los fundamentos de Python: Sintaxis y conceptos básicos

El lenguaje Python tiene muchas similitudes con Perl, C y Java. Sin embargo, existen diferencias definidas entre los lenguajes.

Primer programa en Python

Ejecutemos programas en diferentes modos de programación.

Programación en modo interactivo

Invocar el intérprete sin pasar un archivo de script como parámetro muestra el siguiente prompt:

$ 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.
>>>

Escribe el siguiente texto en el prompt de Python y presiona Enter:

>>> print "¡Hola, Python!"

Si estás ejecutando una versión nueva de Python, necesitarás usar la instrucción print con paréntesis como print("¡Hola, Python!"). En Python 2.4.3, esto produce:

¡Hola, Python!

Programación en modo script

Invocar el intérprete con un parámetro de script inicia la ejecución del script y continúa hasta que termina. Cuando el script termina, el intérprete ya no está activo.

Escribamos un programa simple en un script. Los archivos de Python tienen extensión .py. Escribe el siguiente código en un archivo test.py:

Demo en vivo
print "¡Hola, Python!"

Asumimos que tienes el intérprete de Python en la variable PATH. Ahora, intenta ejecutar este programa:

$ python test.py

Esto produce:

¡Hola, Python!

Probemos otra forma de ejecutar un script Python. Aquí está el archivo test.py modificado:

Demo en vivo
#!/usr/bin/python
print "¡Hola, Python!"

Asumimos que tienes el intérprete de Python en /usr/bin. Ahora, ejecuta:

$ chmod +x test.py  # Hace el archivo ejecutable
$ ./test.py

Esto produce:

¡Hola, Python!

Identificadores en Python

Un identificador de Python es un nombre usado para identificar una variable, función, clase, módulo u otro objeto. Un identificador comienza con una letra A-Z o a-z o un guión bajo (_) seguido de cero o más letras, guiones bajos y dígitos (0-9).

Python no permite caracteres de puntuación como @, $ y % dentro de identificadores. Python distingue mayúsculas y minúsculas. Así, ManoDeObra y manodeobra son dos identificadores diferentes.

Convenciones de nomenclatura para identificadores en Python:

Palabras reservadas

La siguiente lista muestra las palabras clave de Python. Son palabras reservadas y no puedes usarlas como nombres de constantes, variables u otros identificadores. Todas las palabras clave de Python contienen solo letras minúsculas.

andexecnot
assertfinallyor
breakforpass
classfromprint
continueglobalraise
defifreturn
delimporttry
elifinwhile
elseiswith
exceptlambdayield

Líneas e indentación

Python no usa llaves para indicar bloques de código para definiciones de clase y función o control de flujo. Los bloques de código se denotan por indentación de línea, que se aplica rigurosamente.

El número de espacios en la indentación es variable, pero todas las declaraciones dentro del bloque deben tener la misma indentación. Por ejemplo:

if True:
    print "Verdadero"
else:
    print "Falso"

Sin embargo, el siguiente bloque genera un error:

if True:
    print "Respuesta"
print "Verdadero"
else:
    print "Respuesta"
print "Falso"

En Python, todas las líneas continuas indentadas con el mismo número de espacios forman un bloque. El siguiente ejemplo tiene varios bloques de declaraciones:

Nota - No intentes entender la lógica ahora. Solo asegúrate de entender los bloques aunque no tengan llaves.

#!/usr/bin/python
import sys
try:
    # abrir flujo de archivo
    file = open(file_name, "w")
except IOError:
    print "Hubo un error escribiendo en", file_name
    sys.exit()
print "Ingresa '", file_finish,
print "' Cuando termines"
while file_text != file_finish:
    file_text = raw_input("Ingresa texto: ")
    if file_text == file_finish:
        # cerrar el archivo
        file.close()
        break
    file.write(file_text)
    file.write("\n")
file.close()
file_name = raw_input("Ingresa nombre de archivo: ")
if len(file_name) == 0:
    print "La próxima vez ingresa algo"
    sys.exit()
try:
    file = open(file_name, "r")
except IOError:
    print "Hubo un error leyendo el archivo"
    sys.exit()
file_text = file.read()
file.close()
print file_text

Declaraciones multilínea

Las declaraciones en Python típicamente terminan con una nueva línea. Python permite el uso del carácter de continuación de línea (\) para denotar que la línea debe continuar. Por ejemplo:

total = item_uno + \
        item_dos + \
        item_tres

Las declaraciones contenidas dentro de [], {} o () no necesitan el carácter de continuación. Por ejemplo:

dias = ['Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes']

Comillas en Python

Python acepta comillas simples ('), dobles (") y triples (''' o """) para denotar literales de cadena, siempre que el mismo tipo de comilla inicie y termine la cadena.

Las comillas triples se usan para extender la cadena a múltiples líneas. Por ejemplo, todos los siguientes son legales:

palabra = 'palabra'
oracion = "Esta es una oración."
parrafo = """Este es un párrafo.
Está compuesto por múltiples líneas y oraciones."""

Comentarios en Python

Un signo de numeral (#) que no está dentro de un literal de cadena inicia un comentario. Todos los caracteres después del # hasta el final de la línea física son parte del comentario y el intérprete los ignora.

Demo en vivo
#!/usr/bin/python
# Primer comentario
print "¡Hola, Python!"
# segundo comentario

Esto produce:

¡Hola, Python!

Puedes escribir un comentario en la misma línea después de una declaración:

nombre = "Madisetti"  # Esto es otro comentario

Puedes comentar múltiples líneas así:

# Esto es un comentario.
# Esto es un comentario, también.
# Esto es un comentario, también.
# Ya lo dije.

La siguiente cadena entre comillas triples también es ignorada por el intérprete y puede usarse como comentario multilínea:

''' Este es un comentario multilínea. '''

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 totalmente.

En una sesión de intérprete interactivo, debes ingresar una línea física vacía para terminar una declaración multilínea.

Esperando al usuario

La siguiente línea del programa muestra el prompt, la declaración "Presiona la tecla enter para salir", y espera a que el usuario actúe:

#!/usr/bin/python
raw_input("\n\nPresiona la tecla enter para salir.")

Aquí, "\n\n" crea dos nuevas líneas antes de mostrar la línea real. Una vez que el usuario presiona la tecla, el programa termina. Es un buen truco para mantener una ventana de consola abierta hasta que el usuario termine con una aplicación.

Múltiples declaraciones en una sola línea

El punto y coma (;) permite múltiples declaraciones en una sola línea, dado que ninguna declaración inicia un nuevo bloque de código. Ejemplo:

import sys; x = 'foo'; sys.stdout.write(x + '\n')

Grupos de múltiples declaraciones como suites

Un grupo de declaraciones individuales que forman un solo bloque de código se llaman suites en Python. Declaraciones compuestas o complejas, como if, while, def y class requieren una línea de encabezado y una suite.

Las líneas de encabezado inician 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 expresión:
    suite
elif expresión:
    suite
else:
    suite

Argumentos de línea de comandos

Muchos programas pueden ejecutarse para proporcionar información básica sobre cómo deben ejecutarse. Python 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 : programa pasado como string (termina lista de opciones)
-d : salida de depuración del parser (también PYTHONDEBUG=x)
-E : ignorar variables de entorno (como PYTHONPATH)
-h : imprimir este mensaje de ayuda y salir [ etc. ]

También puedes programar tu script para que acepte varias opciones. Los argumentos de línea de comandos es un tema avanzado que debe estudiarse más adelante.

python

  1. Dominando la sintaxis básica de C: Tokens, estructura y punto y coma
  2. Entendiendo C++: Sintaxis Básica y Fundamentos de la Programación Orientada a Objetos
  3. Fundamentos de C#: Sintaxis Básica y Conceptos de POO
  4. Fundamentos de MATLAB: Sintaxis Esencial y Comandos Básicos
  5. Dominando tipos de datos en Python: Guía práctica
  6. Dominando operadores en Python: Guía completa
  7. Dominando la sentencia pass en Python: Guía práctica
  8. Dominando argumentos de funciones en Python: Posicionales, por palabra clave y por defecto
  9. Dominar time.sleep() en Python: Mejores Prácticas, Multihilo y Ejemplos Reales
  10. Dominando los fundamentos de Python: Sintaxis y conceptos básicos
  11. Fundamentos de Java: Dominando la Sintaxis Básica