Python
Librería Estándar Frameworks
José Félix Ontañón Carmona
felixonta@gmail.com
Índice
1. Python:
➢ ➢ ➢ ➢ ➢ ➢ ➢ ➢ ➢
2. Librería Estándar
➢ ➢
Introducción Modo Interactivo Tipos y Estructuras de Datos Sentencias de Control de Flujo Entrada y Salida Definición de Funciones Excepciones Módulos y Paquetes Orientación a Objeto
Módulos EstándarEjemplos
3. Frameworks
➢ ➢ ➢ ➢
Twisted Turbogears pyGame wxPython
4. Bibliografía
Python
Introducción
Historia ● Su desarrollo comineza con Guido Van Rossum en 1990 ● El nombre 'Python' proviene del grupo cómico Monthy Python Características ● Lenguaje Interpretado/'Compilado' de Muy Alto Nivel ● De propósito general ● Programación en paradigmas Procedimental y Orientado a Objeto● Débilmente tipado ● Multiplataforma (Crossplatform) Estructura del código ● Fin de línea marca fin de sentencia ● El sangrado expresa la estructura de bloque
foo = 'bar' if foo == 'bar': print 'ok' else: if foo == 'rab': print 'it's rab'
Modo Interactivo
El modo interactivo python muestra la shell python, a través de la cual podemos ejecutar ordenes python como si de una consola se tratase.
Accedemos a él con solo ejecutar el comando 'python' ● Mejor manera de aprender y familiarizarse con el lenguaje ● Contiene un modo de ayuda ● Prueba y depura tus ideas aquí
●
Alternativas: Idle, PyCrust, Spe ...
Tipos y Estructuras de Datos (I)
Numericos: a=132 b=34*75 c=45/34 a+b (integer) i=2L j=1000L**3 k=4L/2L i+a (long) f=756.123 g=55.3*23 h=45.0/34.0 f+j (float) x=1+0jy=12.070j*13 z=1+1j/11j x+f (complex)
Notas: ● La división con enteros trunca decimales ● Python soporta enteros largos con longitud ilimitada
Cadenas: Nota: | H | e | l | p | 0 1 2 3 4 4 3 2 1
>>> cad='foobar' >>> cad[0] 'f' >>> len(cad) 6 >>> cad[:3] 'foo' >>> cad[3:] 'bar' >>> cad[1:5] 'ooba' >>> cad[-4] 'b' >>> cad[:-1] 'fooba' >>> cad[-4:] 'obar' >>> cad+' raboof' 'foobarraboof' >>> cad.capitalize() 'Foobar' >>> cad.upper() 'FOOBAR'
Tipos y Estructuras de Datos (II)
Disponemos en Python de varios Tipos (estructuras) de Datos Compuestos de forma nativa. Los más comunes, útiles y versátiles son las Listas y los Diccionarios. Pueden agrupar elementos de distintos Tipos para realizar operaciones sobre ellos. Listas: Conjunto de elementos indexados separados por comas Diccionarios: Conjunto de pares clavevalor
>> dic = {'nombre':'Juan','edad':23,'sexo':'M'} >> dic['nombre'] >> list = ['casa'] >> list.count(123) 'Juan' >> list.append[123] 2 >> dic.keys() >> list.insert[0,'boca'] >> list.pop() ['nombre','edad','sexo'] ['boca','casa',123] 123 >> dic.values() >> list.sort() >> nest = [12,'a'] ['Juan',23,'M'] >> list >> list.append(nest) >> dic[144] ='Euros' [123,'boca','casa'] >> list >> list[0:2] [123,'boca','casa',[12,'a']] >> dic {'nombre':'Juan','edad':23,'sexo':'M',144:'Euros'} [123,'boca'] >> len(list) >> dic >> list[-1] 4 >> len(dic) 'casa' 4 >> list.append(123)
Sentencias de Control de Flujo
if : elif : else:
>> lista1 = [1,2,3] >> lista2 = [3,4,5] >> if lista1 == [1,2,3]: ... print 'si' si >> if lista1 > lista2: ...print 'Mayor' ... elif lista1 < lista2: ... print 'Menor' ... else: print 'Igual' Mayor
for in :
>> for numero in range(1,3): .... print numero 1 2 3 >> coord = [(1,1),(1,2),(3,4)] >> for x,y in coord: ... print x,y 11 12 34 >> alpha = {1:'a',3:'c',2:'b'} >> numeros = alpha.keys() >> numeros.sort() >> for numero in numeros: ... print alpha[numero] a b c
while :
>> x = 5 >> while x < 0:... print x, ... x = x -1 54321 >> x = 5 >> while True: ... x = x -1 ... if x == 3: ... continue ... if x == 0: break ... print x, 421
Entrada y Salida
Como en todo lenguaje, podemos trabajar con la E/S de la aplicación a través de teclado y pantalla o a través de ficheros. Python añade algunas comodidades al respecto. Clasica Podemos solicitar valores por teclado con ...
Regístrate para leer el documento completo.