Taller Python Básico (compiladores)
Enviado por felipe.amariles • 12 de Febrero de 2016 • Trabajo • 2.344 Palabras (10 Páginas) • 249 Visitas
Taller Python Básico (compiladores)
1. Introducción Python es un lenguaje de fácil aprendizaje (lenguaje en pseudocódigo) Como todo lenguaje tiene eficientes estructuras y es orientado a objetos (todo es un objeto)
Python es un lenguaje interpretado y hace parte de los lenguajes de script, ideales para el desarrollo rápido de aplicaciones en la mayoría de plataformas. Se utiliza una línea de comandos estándar (shell) o un IDE nativo de Python (IDLE).
El intérprete de Python posee un extenso conjunto de librerías disponibles (http://www.python.org/) , así como también una cantidad considerable de módulos desarrollados por terceros como el módulo PLY para darle robustez y amplitud de escenarios a las diferentes aplicaciones.
2. Para empezar En python las variables no tienen tipo (son objetos), se declaran, se usan y desaparecen, el
operador de asignación es =
Algunos tipos de datos son: Numéricos: itnteger, long, float, complex, promoviendo el tipo más simple.
Strings: delimitadas por comilla simple, doble o triple. Este tipo de datos se trata como objeto con varios métodos de utilidad
Ejemplo:
>>>x,y,z = 1,2,3 >>>saludo = “hola”
>>>primero, segundo = segundo, primero #mirar el error
>>>a = b = 123 >>>int(‘101’, 2) >>>dirs = ‘’, ‘usr’, ‘bin’, ‘env’ >>>‘/’.join(dirs) # ‘/usr/bin/env’
Para definir bloques de código, se utiliza solamente el tabulado (identación). Éstas son algunas estructuras de control:
if x < 5 or (x > 10 and x < 20):
print "El valor es correcto." if x < 5 or 10 < x < 20:
print "El valor es correcto."
x = 10 while x >= 0:
print "x todavía no es negativo." x = x-1
Observe la estructura para el for, la sintaxis es similar a otros lenguajes interpretados:
for i in [1,2,3,4,5]:
print "Iteración no: ", i
La variable de índice en el ciclo for recorre los elementos de una lista (escrita como en el ejemplo). Para realizar un ciclo for "normal" (es decir, como contador), se utiliza la función range().
# Mostrar los valores de 0 a 99 inclusive. for valor in range(100):
print valor
# conversión de millas a kilometros for milla in range(10, 70, 10):
km = milla * 1.609 print "%d millas --> %3.2f kilómetros" % (milla, km)
La línea que comienza por "# " es un comentario el intérprete le hace caso omiso
El formateo de la salida de datos es similar a C o Matlab, por ejemplo %d indica una variable entera, mientras que %f muestra que la variable se mostrará como un número de coma flotante.
Algunos comando para la interacción con el usuario:
Para obtener entrada del usuario, de un indicador de texto, utiliza la función de serie input.
x = input("Introduzca un número:") print "El cuadrado de ese número es:", x*x
La función input muestra la solicitud dada (que podría estar vacía) y permite que el usuario introduzca cualquier valor Python válido. En este caso se espera un número, si se introduce algo diferente (una cadena, por ejemplo), el programa falla. Para evitarlo se necesita código adicional para la comprobación de errores, también existe la función raw_input. Si desea convertir la cadena de entrada s a un entero, podría utilizar int(s).
user_input = raw_input("Ingrese un entero: ") try:
number = int(user_input) print “el número ingresado es”, number except ValueError:
print "Ingrese enteros por favor!"
Nota: Si desea introducir una cadena con input, el usuario debe escribir las comillas explícitamente. En Python, las cadenas pueden encerrarse entre comillas simples o dobles.
2.1. Listas
Python ofrece a los programadores potentes estructuras para almacenar información de cualquier tipo. Las más importantes son las listas, diccionarios y tuplas . Las listas se escriben entre corchetes, y se pueden anidar:
nombre = ["Cleese", "John"] x = [[1,2,3],[y,z],[[[]]]]
Una de las ventajas de las listas es que se puede acceder a sus elementos por separado o en grupos, mediante indexado y corte. El indexado se realiza (como en muchos otros lenguajes) añadiendo el índice entre corchetes a la lista (observar que el primer elemento es el 0).
print nombre[1], nombre[0] Muestra "John Cleese" nombre[0] = "Palin"
print "Esta función crea una lista." def makelist():
a = [] for i in range(1, 20):
a.append(i) print "appending", i, ":", a return a
makelist()
También se puede acceder a los elementos de una lista por rangos o segmentos: se indican los índices de inicio y fin del resultado, con dos puntos (":") de separación:
x = ["elem0","elem1","elem2","elem3","elem4","huevos","and","elem7"] print x[5:7] Muestra la lista ["huevos","and"]
Observe que el elemento del índice final no se incluye en el resultado. Si se omite uno de los índices se supone que se quiere obtener todo en la dirección correspondiente. Esto es, lista[:3] quiere decir "cada elemento desde el principio de lista hasta el elemento 3, no incluido".
print x[:4] ?
lista[3:] significaría, por otra parte "cada elemento de lista , empezando por el 3 (inclusive), hasta el último inclusive". Se pueden utilizar números negativos para obtener resultados muy interesantes:
lista[-3] es el tercer elemento desde el final de la lista...
print x[4:] ?
La función len() devuelve la longitud de una lista.
2.2.Tuplas
Son estructuras inmutables similares a una lista, sin embargo una vez creadas no pueden modificarse
tupla=('notas', 4, 5, 3.2)
print tupla
tupla[1]=4.5 #error
2.3. Diccionarios
Los diccionarios por su parte, son como listas, pero su contenido no está ordenado. El acceso a los elementos se hace a través de una clave que se utiliza para buscar el elemento, como en un diccionario de verdad. Un par de diccionarios de ejemplo:
{ "Alicia" : 23452532, "Boris" : 252336, "Clara" : 2352525 }
persona = { 'nombre': "Carlos", 'apellido': "Castro",
'ocupacion': "Ingeniero de Sistemas" }
Ahora, para obtener la ocupación de persona, se utiliza la expresión persona["ocupacion"] . Si se quiere modificar el valor de la clave, es decir el contenido de un elemento:
...