Commits

Alfonso de la Guarda Reyes committed 6a97e19

Curso Python

Comments (0)

Files changed (249)

.hg/00changelog.i

Binary file added.

.hg/dirstate

Binary file added.

.hg/last-message.txt

+Primera Revision de Codigo Ejemplo para Clases
+revlogv1
+store
+fncache
+dotencode

.hg/store/00changelog.i

Binary file added.

.hg/store/00manifest.i

Binary file added.

.hg/store/data/_tkinter/alfonso__arica.jpg.i

Binary file added.

.hg/store/data/_tkinter/data.i

Binary file added.

.hg/store/data/_tkinter/db.db.i

Binary file added.

.hg/store/data/_tkinter/logo__ictec__small.png.i

Binary file added.

.hg/store/data/_tkinter/new/data__print.i

Binary file added.

.hg/store/data/_tkinter/new/data__template.i

Binary file added.

.hg/store/data/_tkinter/new/db.db.i

Binary file added.

.hg/store/data/_tkinter/new/ticket__prn.py.i

Binary file added.

.hg/store/data/_tkinter/plantilla.i

Binary file added.

.hg/store/data/_tkinter/setup.py.i

Binary file added.

.hg/store/data/_tkinter/simpleview.py.i

Binary file added.

.hg/store/data/_tkinter/ticket__prn.py.i

Binary file added.

.hg/store/data/_tkinter/tkinter__001.py.i

Binary file added.

.hg/store/data/control__de__flujo/020310/condicionalesd-001.py.i

Binary file added.

.hg/store/data/control__de__flujo/020310/while-001.py.i

Binary file added.

.hg/store/data/control__de__flujo/020310/while-002.py.i

Binary file added.

.hg/store/data/control__de__flujo/diccionario__input__basico.py.i

Binary file added.

.hg/store/data/control__de__flujo/for__01.py.i

Binary file added.

.hg/store/data/control__de__flujo/for__02.py.i

Binary file added.

.hg/store/data/control__de__flujo/if__01.py.i

Binary file added.

.hg/store/data/control__de__flujo/if__02.py.i

Binary file added.

.hg/store/data/control__de__flujo/if__elif.py.i

Binary file added.

.hg/store/data/control__de__flujo/if__simple.py.i

Binary file added.

.hg/store/data/control__de__flujo/integradores.py.i

Binary file added.

.hg/store/data/control__de__flujo/tarea__alumnos.py.i

Binary file added.

.hg/store/data/control__de__flujo/while__01.py.i

Binary file added.

.hg/store/data/control__de__flujo/while__02.py.i

Binary file added.

.hg/store/data/control__de__flujo/while__otro.py.i

Binary file added.

.hg/store/data/funcional/contar__letras__func.py.i

Binary file added.

.hg/store/data/funcional/decoradores-2.py.i

Binary file added.

.hg/store/data/funcional/decoradores.py.i

Binary file added.

.hg/store/data/funcional/demo.txt.i

Binary file added.

.hg/store/data/funcional/filter__lambda.py.i

Binary file added.

.hg/store/data/funcional/func__reduce__eje2.py.i

Binary file added.

.hg/store/data/funcional/funcion__filter.py.i

Binary file added.

.hg/store/data/funcional/funcion__map.py.i

Binary file added.

.hg/store/data/funcional/funcion__reduce.py.i

Binary file added.

.hg/store/data/funcional/funcional.py.i

Binary file added.

.hg/store/data/funcional/funciones__orden__superior.py.i

Binary file added.

.hg/store/data/funcional/funciones__orden__superior__easy.py.i

Binary file added.

.hg/store/data/funcional/generadores.py.i

Binary file added.

.hg/store/data/funcional/list__comprehensions.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/clase__futbolista.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/excepciones__001.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/excepciones__002.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/excepciones__003.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/funciones__001.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/funciones__002.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/funciones__003.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/nombres.txt.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/objetos/demo.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/oop__001.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/oop__002.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/oop__003.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/oop__salon__clases.py.i

Binary file added.

.hg/store/data/funciones__excepciones__oop/suma__funciones.py.i

Binary file added.

.hg/store/data/glade/consultas.glade.i

Binary file added.

.hg/store/data/glade/consultas.py.i

Binary file added.

.hg/store/data/glade/demo__min.glade.i

Binary file added.

.hg/store/data/glade/eje1.glade.i

Binary file added.

.hg/store/data/glade/eje1.py.i

Binary file added.

.hg/store/data/glade/ejemplo__1.glade.i

Binary file added.

.hg/store/data/glade/ejemplo__glade.glade.i

Binary file added.

.hg/store/data/glade/ejemplo__glade.py.i

Binary file added.

.hg/store/data/glade/ejex.db.i

Binary file added.

.hg/store/data/glade/hello.db.i

Binary file added.

.hg/store/data/glade/interfaz.glade.i

Binary file added.

.hg/store/data/glade/interfaz.py.i

Binary file added.

.hg/store/data/glade/interfaz__test.glade.i

Binary file added.

.hg/store/data/glade/interfaz__test.py.i

Binary file added.

.hg/store/data/glade/pywine.glade.i

Binary file added.

.hg/store/data/glade/pywine.py.i

Binary file added.

.hg/store/data/glade/short.py.i

Binary file added.

.hg/store/data/glade/test.ogg.i

Binary file added.

.hg/store/data/glade/tutoriales/_taller_python_g_t_k_glade.pdf.d

Binary file added.

.hg/store/data/glade/tutoriales/_taller_python_g_t_k_glade.pdf.i

Binary file added.

.hg/store/data/glade/tutoriales/an-introduction-to-tkinter.pdf.d

Binary file added.

.hg/store/data/glade/tutoriales/an-introduction-to-tkinter.pdf.i

Binary file added.

.hg/store/data/glade/tutoriales/pil.pdf.d

Binary file added.

.hg/store/data/glade/tutoriales/pil.pdf.i

Binary file added.

.hg/store/data/glade/tutoriales/tkinter.pdf.d

Binary file added.

.hg/store/data/glade/tutoriales/tkinter.pdf.i

Binary file added.

.hg/store/data/glade/tutoriales/tutorial__glade__python.pdf.d

Binary file added.

.hg/store/data/glade/tutoriales/tutorial__glade__python.pdf.i

Binary file added.

.hg/store/data/glade/ventana__eje.glade.i

Binary file added.

.hg/store/data/glade/ventana__eje.py.i

Binary file added.

.hg/store/data/modulos/audio__demo.py.i

Binary file added.

.hg/store/data/modulos/basedat.bdx.i

Binary file added.

.hg/store/data/modulos/bluetooth__demo.py.i

Binary file added.

.hg/store/data/modulos/bluetooth__inside.py.i

Binary file added.

.hg/store/data/modulos/browser.py.i

Binary file added.

.hg/store/data/modulos/brute__force.py.i

Binary file added.

.hg/store/data/modulos/chatserver.py.i

Binary file added.

.hg/store/data/modulos/claves.txt.i

Binary file added.

.hg/store/data/modulos/demo.html.i

Binary file added.

.hg/store/data/modulos/demo.txt.i

Binary file added.

.hg/store/data/modulos/ejemplo.bd.i

Binary file added.

.hg/store/data/modulos/ejemplo/____init____.py.i

Binary file added.

.hg/store/data/modulos/ejemplo/____init____.pyc.i

Binary file added.

.hg/store/data/modulos/ejemplo/demoby.py.i

Binary file added.

.hg/store/data/modulos/ejemplo/demoby.pyc.i

Binary file added.

.hg/store/data/modulos/ejemplo/eje2/____init____.py.i

Binary file added.

.hg/store/data/modulos/ejemplo/eje2/____init____.pyc.i

Binary file added.

.hg/store/data/modulos/ejemplo__modulo.py.i

Binary file added.

.hg/store/data/modulos/ejemplo__modulo.pyc.i

Binary file added.

.hg/store/data/modulos/excepciones.py.i

Binary file added.

.hg/store/data/modulos/get__page__urllib.py.i

Binary file added.

.hg/store/data/modulos/html-re.py.i

Binary file added.

.hg/store/data/modulos/lectura__escritura.py.i

Binary file added.

.hg/store/data/modulos/libdemo.py.i

Binary file added.

.hg/store/data/modulos/libdemo.pyc.i

Binary file added.

.hg/store/data/modulos/params__sys.py.i

Binary file added.

.hg/store/data/modulos/sockets__cliente.py.i

Binary file added.

.hg/store/data/modulos/sockets__servidor.py.i

Binary file added.

.hg/store/data/modulos/sqlite3__demo.py.i

Binary file added.

.hg/store/data/modulos/sqlite__demo2.py.i

Binary file added.

.hg/store/data/modulos/test.ogg.d

Binary file added.

.hg/store/data/modulos/test.ogg.i

Binary file added.

.hg/store/data/modulos/texto__extraido.txt.i

Binary file added.

.hg/store/data/modulos/twistd.log.i

Binary file added.

.hg/store/data/modulos/webservices.py.i

Binary file added.

.hg/store/fncache

+data/Tkinter/alfonso_arica.jpg.i
+data/Tkinter/data.i
+data/Tkinter/db.db.i
+data/Tkinter/logo_ictec_small.png.i
+data/Tkinter/new/data_print.i
+data/Tkinter/new/data_template.i
+data/Tkinter/new/db.db.i
+data/Tkinter/new/ticket_prn.py.i
+data/Tkinter/plantilla.i
+data/Tkinter/setup.py.i
+data/Tkinter/simpleview.py.i
+data/Tkinter/ticket_prn.py.i
+data/Tkinter/tkinter_001.py.i
+data/control_de_flujo/020310/condicionalesd-001.py.i
+data/control_de_flujo/020310/while-001.py.i
+data/control_de_flujo/020310/while-002.py.i
+data/control_de_flujo/diccionario_input_basico.py.i
+data/control_de_flujo/for_01.py.i
+data/control_de_flujo/for_02.py.i
+data/control_de_flujo/if_01.py.i
+data/control_de_flujo/if_02.py.i
+data/control_de_flujo/if_elif.py.i
+data/control_de_flujo/if_simple.py.i
+data/control_de_flujo/integradores.py.i
+data/control_de_flujo/tarea_alumnos.py.i
+data/control_de_flujo/while_01.py.i
+data/control_de_flujo/while_02.py.i
+data/control_de_flujo/while_otro.py.i
+data/funcional/contar_letras_func.py.i
+data/funcional/decoradores-2.py.i
+data/funcional/decoradores.py.i
+data/funcional/demo.txt.i
+data/funcional/filter_lambda.py.i
+data/funcional/func_reduce_eje2.py.i
+data/funcional/funcion_filter.py.i
+data/funcional/funcion_map.py.i
+data/funcional/funcion_reduce.py.i
+data/funcional/funcional.py.i
+data/funcional/funciones_orden_superior.py.i
+data/funcional/funciones_orden_superior_easy.py.i
+data/funcional/generadores.py.i
+data/funcional/list_comprehensions.py.i
+data/funciones_excepciones_oop/clase_futbolista.py.i
+data/funciones_excepciones_oop/excepciones_001.py.i
+data/funciones_excepciones_oop/excepciones_002.py.i
+data/funciones_excepciones_oop/excepciones_003.py.i
+data/funciones_excepciones_oop/funciones_001.py.i
+data/funciones_excepciones_oop/funciones_002.py.i
+data/funciones_excepciones_oop/funciones_003.py.i
+data/funciones_excepciones_oop/nombres.txt.i
+data/funciones_excepciones_oop/objetos/demo.py.i
+data/funciones_excepciones_oop/oop_001.py.i
+data/funciones_excepciones_oop/oop_002.py.i
+data/funciones_excepciones_oop/oop_003.py.i
+data/funciones_excepciones_oop/oop_salon_clases.py.i
+data/funciones_excepciones_oop/suma_funciones.py.i
+data/glade/consultas.glade.i
+data/glade/consultas.py.i
+data/glade/demo_min.glade.i
+data/glade/eje1.glade.i
+data/glade/eje1.py.i
+data/glade/ejemplo_1.glade.i
+data/glade/ejemplo_glade.glade.i
+data/glade/ejemplo_glade.py.i
+data/glade/ejex.db.i
+data/glade/hello.db.i
+data/glade/interfaz.glade.i
+data/glade/interfaz.py.i
+data/glade/interfaz_test.glade.i
+data/glade/interfaz_test.py.i
+data/glade/pywine.glade.i
+data/glade/pywine.py.i
+data/glade/short.py.i
+data/glade/test.ogg.i
+data/glade/tutoriales/TallerPythonGTKGlade.pdf.i
+data/glade/tutoriales/TallerPythonGTKGlade.pdf.d
+data/glade/tutoriales/an-introduction-to-tkinter.pdf.i
+data/glade/tutoriales/an-introduction-to-tkinter.pdf.d
+data/glade/tutoriales/pil.pdf.i
+data/glade/tutoriales/pil.pdf.d
+data/glade/tutoriales/tkinter.pdf.i
+data/glade/tutoriales/tkinter.pdf.d
+data/glade/tutoriales/tutorial_glade_python.pdf.i
+data/glade/tutoriales/tutorial_glade_python.pdf.d
+data/glade/ventana_eje.glade.i
+data/glade/ventana_eje.py.i
+data/modulos/audio_demo.py.i
+data/modulos/basedat.bdx.i
+data/modulos/bluetooth_demo.py.i
+data/modulos/bluetooth_inside.py.i
+data/modulos/browser.py.i
+data/modulos/brute_force.py.i
+data/modulos/chatserver.py.i
+data/modulos/claves.txt.i
+data/modulos/demo.html.i
+data/modulos/demo.txt.i
+data/modulos/ejemplo.bd.i
+data/modulos/ejemplo/__init__.py.i
+data/modulos/ejemplo/__init__.pyc.i
+data/modulos/ejemplo/demoby.py.i
+data/modulos/ejemplo/demoby.pyc.i
+data/modulos/ejemplo/eje2/__init__.py.i
+data/modulos/ejemplo/eje2/__init__.pyc.i
+data/modulos/ejemplo_modulo.py.i
+data/modulos/ejemplo_modulo.pyc.i
+data/modulos/excepciones.py.i
+data/modulos/get_page_urllib.py.i
+data/modulos/html-re.py.i
+data/modulos/lectura_escritura.py.i
+data/modulos/libdemo.py.i
+data/modulos/libdemo.pyc.i
+data/modulos/params_sys.py.i
+data/modulos/sockets_cliente.py.i
+data/modulos/sockets_servidor.py.i
+data/modulos/sqlite3_demo.py.i
+data/modulos/sqlite_demo2.py.i
+data/modulos/test.ogg.i
+data/modulos/test.ogg.d
+data/modulos/texto_extraido.txt.i
+data/modulos/twistd.log.i
+data/modulos/webservices.py.i

.hg/store/undo

Binary file added.
+0 1be5f7a52002ad9bac29d440a20de5e2530927bb
+
+default
+0
+commit

.hg/undo.dirstate

Binary file added.

control_de_flujo/020310/condicionalesd-001.py

+#Ejemplo de aplicacion
+
+nombre=raw_input('Ingrese su nombre:')
+edad=input('Ingrese su edad:')
+
+if edad>18 and edad<=60:
+    print 'Hola',nombre,'!'
+    print 'Tienes',edad,',eres MAYOR DE EDAD'
+    if edad==36:
+        print 'Eres Alfonso!!!'
+elif edad>60:
+    print 'Bienvenido',nombre
+    print 'Usted es una autoridad'
+else:
+    print 'No puedes ingresar! Eres MENOR DE EDAD'
+    print 'terrible!!!'

control_de_flujo/020310/while-001.py

+edad=0
+
+while edad<18:
+    edad=input('Cual es tu edad?')
+
+
+print 'Bienvenido!'

control_de_flujo/020310/while-002.py

+#a=True
+while 1:
+    clave=raw_input('Cual es tu nombre?')
+    if clave=='Alfonso':
+        print 'Bien!'
+        break
+    print 'Respuesta Errada'
+    palabra='hello'

control_de_flujo/diccionario_input_basico.py

+nombres=raw_input('Nombres:')
+apellidos=raw_input('Apellidos:')
+direccion=raw_input('Direccion:')
+dni=raw_input('DNI:')
+diccionario={}
+diccionario[dni]=(nombres,apellidos,direccion)
+print diccionario

control_de_flujo/for_01.py

+lista = range(0, 10)
+#lista=[0,1,2,3,4,5,6,7,8,9]
+print lista
+for valor in lista:
+    print 'letras' * valor

control_de_flujo/for_02.py

+palabra = raw_input('Palabra:')  # mama
+npalabra = ''
+#posicion=0#
+cuenta = len(palabra)  # 4
+posicion = cuenta / 2  # 2
+for letra in palabra[posicion:]:  # ma
+    npalabra = letra + npalabra  # m # am
+print 'Al reves es ' + npalabra

control_de_flujo/if_01.py

+nombre = raw_input('Nombre:')
+clave = raw_input('Clave:')
+if nombre == 'mario':  # Si nombre ES IGUAL QUE mario ENTONCES
+    print('Validando clave...')
+    if clave == 'si':
+        print 'Bienvenido a Braniac'
+    else:
+        print 'Clave errada'
+else:  # de lo contrario / sino ENTONCES
+    print 'Falsificador'

control_de_flujo/if_02.py

+nombre = raw_input('Nombre:')
+clave = raw_input('Clave:')
+if nombre == 'mario':
+    print 'Validando clave...'
+    if clave == 'si':
+        print 'Bienvenido a Braniac'
+    else:
+        print 'Clave errada'
+elif nombre == 'lucho':
+    print 'Usuario robado previamente, avisando al SysOP'
+else:
+    print 'Falsificador'

control_de_flujo/if_elif.py

+# -*- encoding:utf-8 -*-
+
+print 'Menu del dia'
+print '1. Sopa'
+print '2. Palta a la reyna'
+print '3. Ceviche de lenguado con langostinos'
+print '4. Leche de leopardo'
+print '5. Cazuela'
+opcion = input('Cual es su opcion:')
+if opcion == 1:
+    print 'Una deliciosa sopa a la minuta en camino'
+    print 'mmmmmmmmmmmmmmmmm'
+elif opcion == 2:
+    print 'No hay'
+elif opcion == 3:
+    print 'Viene en camino con un poco de ají'
+    print 'Está listo el comensal?'
+elif opcion == 4:
+    print 'Ya señor'
+elif opcion == 5:
+    print 'Que feo!'
+else:
+    print 'No tenemos eso'

control_de_flujo/if_simple.py

+puerta = raw_input('Ingresa la puerta magica:')
+if puerta == '4':
+    print 'Ganaste el auto!'
+else:
+    print 'Ganaste una pina'

control_de_flujo/integradores.py

+#dsddsdsdsds
+posx=input('Posicion de Corte:')
+while 1:#Mientras sea verdad
+    palabra=raw_input('Palabra:')
+    npalabra=''
+    cuenta=len(palabra)#mama==4
+    if cuenta<4:
+        print 'La cadena debe tener mas de 2 caracteres'
+    else:
+        if posx==-1:
+            posx=cuenta##4
+        posicion=cuenta/posx##4/4==1
+        for letra in palabra[posicion:]:#mama==ama
+            npalabra=letra+npalabra#a+''#m+a#a+ma
+        print 'Al reves es',npalabra
+        resp=raw_input('Continuar(S/N)?')
+        if resp=='N' or resp=='n':
+            break
+print 'Listo'

control_de_flujo/tarea_alumnos.py

+Alumnos={}
+while True:
+    print 'Menu'
+    print '1. Agregar Alumno'
+    print '2. Agregar Notas'
+    print '3. Reportar Notas'
+    print '4. Salir'
+    opcion=input('Opcion:')
+    if opcion==1:
+        codigo=raw_input('Codigo:')
+        nombre=raw_input('Nombre:')
+        apellidos=raw_input('Apellidos:')
+        Alumnos[codigo]={'nombre':nombre,'apellidos':apellidos,'cursos':{}}
+        print 'Agregado'
+    elif opcion==2:
+        codigo=raw_input('Codigo:')
+        curso=raw_input('Curso:')
+        nota=input('Nota:')
+        Alumnos[codigo]['cursos'][curso]=nota
+        print 'Agregado',curso,'con nota',nota
+    eliBf opcion==3:
+        sumatoria=0
+        contador=0
+        codigo=raw_input('Codigo:')
+        for valor in Alumnos[codigo]['cursos']:
+            nota=Alumnos[codigo]['cursos'][valor]
+            print 'El curso',valor,'tiene una nota de',nota
+            contador+=1#contador=contador+1
+            sumatoria+=nota
+        print 'El promedio es',sumatoria/float(contador)
+    else:
+        break
+        

control_de_flujo/while_01.py

+numero_magico = 0
+while numero_magico != '45':  # MIENTRAS numero_magico SEA DIFERENTE 45 ENT
+    print 'Intenta...'
+    numero_magico = raw_input('Numero ("salir"):')
+    if numero_magico == 'salir':
+        break
+#    else:
+#        numero_magico=int(numero_magico)
+print 'Acertaste!!!!'

control_de_flujo/while_02.py

+while True:  # while 'mama': while 1: while 2:
+    usuario = raw_input('usuario:')
+    if usuario == 'picard':
+        break
+    print 'Acceso equivocado, intenta otra vez'
+print 'Bienvenido al USS Enterprise NCC-1701A'

control_de_flujo/while_otro.py

+# -*- encoding:utf-8 -*-
+while True:
+    print 'Menu del dia'
+    print '1. Sopa'
+    print '2. Palta a la reyna'
+    print '3. Ceviche de lenguado con langostinos'
+    print '4. Leche de leopardo'
+    print '5. Cazuela'
+    opcion = input('Cual es su opcion:')
+    if opcion == 1:
+        print 'Una deliciosa sopa a la minuta en camino'
+        print 'mmmmmmmmmmmmmmmmm'
+        break
+    elif opcion == 2:
+        print 'No hay'
+    elif opcion == 3:
+        print 'Viene en camino con un poco de ají'
+        print 'Está listo el comensal?'
+        break
+    elif opcion == 4:
+        print 'Ya señor'
+        break
+    elif opcion == 5:
+        print 'Que feo!'
+        break
+    else:
+        print 'No tenemos eso, por favor escoja bien'
+print 'Servido!'

funcional/contar_letras_func.py

+palabra = raw_input('Palabra:')
+voca = [letra for letra in palabra if letra in
+        ['a', 'e', 'i', 'o', 'u']]
+cons = [letra for letra in palabra if letra not in
+        ['a', 'e', 'i', 'o', 'u']]
+print 'Palabra:', palabra, 'Dimension:', len(palabra)
+print 'Vocales:', voca, 'Cnt Vocales:', len(voca)
+print 'Consonantes', cons, 'Cnt Consonantes', len(cons)

funcional/decoradores-2.py

+#mas decoradores
+
+AUTHENTICATED = True
+
+def avisar(funcion_1):
+    def interna1(*args, **kwargs):
+        funcion_1(*args, **kwargs)
+        print "Se ha ejecutado %s" % funcion_1.__name__
+    return interna1
+
+def autenticado(funcion_2):
+    def interna2(*args, **kwargs):
+        if AUTHENTICATED:
+            print 'Demostracion',funcion_2.__name__
+            funcion_2(*args, **kwargs)
+            print 'La llamada es',funcion_2.__name__
+        else:
+           raise Exception
+    return interna2
+
+@autenticado
+@avisar
+def abrir_puerta():
+    print "Abrir puerta"
+
+#@autenticado
+#@avisar
+#def cerrar_puerta():
+#    print "Cerrar puerta"
+
+abrir_puerta()
+#cerrar_puerta()

funcional/decoradores.py

+#decoradores: funcion que recibe una funcion como param y
+#regresa otra funcion como res
+
+
+def mi_decorador(funcion):
+    def nueva(*args):
+        print 'Esta autorizado para ejecutar la funcion', funcion.__name__
+#        print "Llamada a la funcion", funcion.__name__
+        #print dir(funcion), funcion.__globals__
+        funcion(*args)
+#        return retorno
+    print 'Esta dentro de la funcion mi_decorador',__name__
+    return nueva
+
+@mi_decorador
+def impresion(param):
+    print 'que tal',param
+
+impresion('hola')
+#mi_decorador(imp)('Hola')

funcional/demo.txt

+Hola
+Hola2
+Adios
+ByeBye
+Auf Wiedersehen
+Wie get es dir?
+
+Mein Haus
+
+Ich sprache fleissig deutsch
+My beautifull computer

funcional/demo2.txt

+Adios
+Hola2
+Adios
+ByeBye
+Auf Wiedersehen
+Wie get es dir?
+
+Mein Haus
+
+Ich sprache fleissig deutsch
+My beautifull computer

funcional/filter_lambda.py

+#lambda:funciones anonimas en una solo linea (una sola expresion)
+
+l = [1, 2, 3]
+l2 = filter(lambda n: n % 2.0 == 0, l)
+print l2
+
+l3 = reduce(lambda x,y: x+y,l)
+print l3

funcional/func_reduce_eje2.py

+def res(val1, val2):
+     ascii=''
+     for l in val1.upper():
+        ascii+=str(ord(l))
+     for l in val2.upper():
+        ascii+=str(ord(l))
+     return ascii
+     
+     
+palabras=['mama', 'papa', 'hijo', 'hermano']
+print reduce(res,palabras)

funcional/funcion_filter.py

+#filter:filtra los elementos de una lista, regresando otra lista
+
+def es_par(n):
+    return (n % 2.0 == 0)
+
+#l = [1, 2, 3,4,6,9]
+l = range(1, 1000)
+l2 = filter(es_par, l)
+print len(l2)

funcional/funcion_map.py

+#map: aplica una funcion a cada elemento de una lista
+
+def cuadrado(n):
+    return n ** 2
+
+l = [1, 2, 3]
+l2 = map(cuadrado, l)
+print tuple(l2)

funcional/funcion_reduce.py

+#reduce:aplica una funcion a pares, hasta entregar un solo valor
+
+def sumar(x, y):
+    return (x + y)#**2
+
+l = [1, 2, 3]
+l2 = reduce(sumar, l)
+print l2

funcional/funcional.nja

+{
+  "mainFile": "", 
+  "venv": "", 
+  "relatedProjects": [], 
+  "name": "funcional", 
+  "license": "", 
+  "url": "", 
+  "pythonPath": "python", 
+  "preExecScript": "", 
+  "programParams": "", 
+  "PYTHONPATH": "", 
+  "supported-extensions": [
+    ".py", 
+    ".html", 
+    ".jpg", 
+    ".png", 
+    ".ui", 
+    ".css", 
+    ".json", 
+    ".js", 
+    ".ini", 
+    ".xml", 
+    ".txt"
+  ], 
+  "project-type": "", 
+  "postExecScript": "", 
+  "description": ""
+}

funcional/funcional.py

+def parte(contenido):
+    if contenido.strip() == 'Hola':
+        return 'Adios\n'
+    else:
+        return contenido
+
+arch = [parte(linea)
+    for linea in open('demo.txt').readlines()
+    ]
+print arch
+open('demo2.txt', 'w').writelines(arch)
+
+#nlista=[]
+#archivo=open('demo.txt')
+#lineas=archivo.readlines()
+#for linea in lineas:
+#    if linea.count('W')>0:
+#        nlista.append(linea.strip())
+#print nlista

funcional/funciones_orden_superior.py

+def saludar(lang):  # en
+    def saludar_es(param):
+        print "Hola",param
+    def saludar_en(param):
+        print "Hi",param
+    def saludar_fr(param):
+        print "Salut",param
+    lang_func = {"es": saludar_es,
+                 "en": saludar_en,
+                 "fr": saludar_fr}
+    return lang_func[lang]
+f = saludar("en")
+f('Alfonso')
+saludar('es')('Marco')
+#saludar.upper().center(10).width()

funcional/funciones_orden_superior_easy.py

+def saludar(lang):
+    def saludar_es(param,pais):
+        print "Hola",param
+        print "Vives en",pais
+    def saludar_en(param,country):
+        print "Hi",param
+        print "You live in",country
+    def saludar_de(param,lande):
+        print "Hallo",param
+        print "Du wohnst auf",lande
+    lang_func = {"es": saludar_es,
+                 "en": saludar_en,
+                 "de": saludar_de}
+    return lang_func[lang]
+
+
+print 'Menu'
+idioma=raw_input('Sprache? Language? Lenguaje? (es,en,de):')
+nombre=raw_input('Namme? Name? Nombre?:')
+pais=raw_input('Lande? Country? Pais?:')
+saludar(idioma)(nombre,pais)

funcional/generadores.py

+#genradores:consumen menos memoria
+
+def mi_generador(n, m, s):
+    while(n <= m):
+        yield n
+        n += s
+
+gener=mi_generador(0,10,2)
+for ele in gener:
+	print ele
+print list(gener)

funcional/list_comprehensions.py

+#list-comprehensions:listas para obtener listas
+
+l = [1, 2, 3]
+
+#Lo que hicimos con map
+print [n ** 2 for n in l] #if n>1]
+
+
+#Lo que hicimos con filter/lambda
+l2 = [n for n in l if n % 2.0 == 0]
+print l2
+
+#Ejemplo mas complejo
+l = [0, 1, 2, 3]
+m = ["a", "b"]
+n = [s * v for s in m
+           for v in l
+           if v > 0]
+print n

funciones_excepciones_oop/clase_futbolista.py

+class Futbolista:
+    Velocidad=40
+    Aceleracion=70
+    Resistencia=30
+    TonoMuscular=50
+    Nacionalidad='Peruano'
+    Nombre='ND'
+    
+    def __init__(self,nom=Nombre,vel=Velocidad,acel=Aceleracion,tono=TonoMuscular):
+        self.Nombre=nom
+        self.Velocidad=vel
+        self.Aceleracion=acel
+        self.TonoMuscular=tono
+    
+    def correr(self,vel):
+        print 'El futbolista',self.Nombre,'corre a una velocidad de',vel
+    
+    def patear(self,fuerza,direccion):
+        calculo=(self.Velocidad+self.Aceleracion)/self.TonoMuscular
+        desar=fuerza-calculo
+        print self.Nombre,'ha pateado en direccion',direccion
+        print 'La velocidad desarrollada es de',desar
+    
+    def pase(self,fuerza,direccion,velocidad,quien):
+        print self.Nombre
+        print 'Le pasa la pelota a',quien
+        print 'en direccion',direccion
+        print 'con una fuerza de',fuerza
+        print 'el balon se desplaza a una vel',velocidad
+
+
+
+Juan=Futbolista()
+#Juan.Nombre='Juan Ramirez'
+#Juan.correr(10)
+Juan.patear(45,'NE')
+#Juan.pase(40,'NE',60,'Roberto Braulio')
+Alberto=Futbolista('Alberto Piazza',80,90,100)
+#Alberto.Nombre='Alberto Piazza'
+#Alberto.Velocidad=80
+#Alberto.TonoMuscular=100
+Alberto.patear(45,'NE')

funciones_excepciones_oop/excepciones_001.py

+try:
+    print 12 / 0
+except ZeroDivisionError, e:
+    print 'Diviendo entre 0'
+    print e
+except FloatingPointError, e:
+    print 'Error de punto flotante'

funciones_excepciones_oop/excepciones_002.py

+try:  # intenta
+    print 12 / 1
+except Exception, e:  # en caso excepcion
+    print 'Ha habido un error', e
+else:  # de lo contrario (SI NO HA HABIDO ERROR)
+    print 'Todo bien'
+finally:  # finalmente (SIEMPRE)
+    print 'Seguimos con el programa'

funciones_excepciones_oop/excepciones_003.py

+while 1:
+    try:
+        nombre = raw_input('Nombre:')
+        edad = input('Edad:')
+        break
+    except Exception, error:
+#        pass
+        print 'Ha habido un ERROR', error

funciones_excepciones_oop/funciones_001.py

+#resultado=56
+#import global
+
+def suma(param1,param2):  # definir suma que recibe param1 y param2
+#    global resultado
+    resultado = param1 + param2
+    print 'El resultado de la suma es ' + str(resultado)
+#    return resultado
+#    return 'La suma se realizo satisfactoriamente'
+#    print "Mi maMA me dijo",resultado
+
+#    print 'El resultado de la suma es '+str(param1+param2)
+
+
+#val1=input('Ingresa Valor1:')
+val1 = 90
+retorno = suma(val1, 20)
+print retorno + val1
+print resultado

funciones_excepciones_oop/funciones_002.py

+def suma(param1,param2,*param3,**param4):
+    print 'El resultado de la suma es',param1+param2
+    print param3
+    for letra in param3:
+        print letra
+    print param4
+    return 'OK'
+
+res=suma(10,20,90,78,letra='a',cancion='beautifull thing')
+print res

funciones_excepciones_oop/funciones_003.py

+def suma(param1,param2):
+    return param1+param2
+
+def resta(param1,param2):
+    return param1-param2
+
+def multiplicacion(param1,param2):
+    resultado=param1*param2
+    return resultado
+
+def ingreso():
+    val1=input('Valor 1:')
+    val2=input('Valor 2:')
+    return val1,val2
+
+def calculadora(nombre):
+    while True:
+        print 'Bienvenido',nombre
+        print 'Menu'
+        print '1. Sumar'
+        print '2. Restar'
+        print '3. Multiplicar'
+        print '4. Salir'
+        opcion=input('Opcion:')
+        if opcion==4:
+            return
+        val1,val2=ingreso()
+        if opcion==1:
+            res=suma(val1,val2)
+            print 'El resultado de la suma'
+        elif opcion==2:
+            res=resta(val1,val2)
+            print 'El resultado de la resta'
+        elif opcion==3:
+            res=multiplicacion(val1,val2)
+            print 'El resultado de la multiplicacion'
+        print 'Es:',res
+
+
+calculadora('Alfonso')

funciones_excepciones_oop/nombres.txt

+Alfonso
+Cecilia
+Gabriela
+Joel
+Jose
+Maria
+Ruby

funciones_excepciones_oop/objetos/demo.py

+a='cancion'
+
+print a.capitalize()
+print a.capitalize().center(80)
+print a.upper().rjust(80)
+
+if a!='cancion':
+    print 'aaa'
+else:
+   print 'no se'
+
+print a.split('n')

funciones_excepciones_oop/oop_001.py

+class Movimiento:
+#    Velocidad=0
+
+    def __init__(self):
+        self.Velocidad=50
+
+    def avanzar(self,valor):
+        print 'Estas avanzando',valor,'metros'
+#        print 'La velocidad inicial es',self.Velocidad
+
+    def retroceder(self,valor):
+        print 'Estas retrocediendo',valor,'metros'
+
+    def izquierda(self,valor):
+        print 'Das la vuelta en',valor,'grados a la izquierda'
+
+    def derecha(self,valor):
+        print 'Das la vuelta en',valor,'grados a la derecha'
+
+
+Carro=Movimiento()
+Carro.avanzar(30)
+Carro.avanzar(30)
+Carro.Velocidad=100
+Carro.avanzar(10)
+Carro.izquierda(45)
+Carro.avanzar(100)
+Carro.derecha(10)
+Carro.retroceder(67)
+#Carro=False
+#print Carro

funciones_excepciones_oop/oop_002.py

+class Movimiento:
+    Velocidad=0
+    
+    def __init__(self):
+        self.Velocidad=50
+    
+    def avanzar(self,valor):
+        print 'Estas avanzando',valor,'metros'
+#        print 'La velocidad inicial es',self.Velocidad
+    
+    def retroceder(self,valor):
+        print 'Estas retrocediendo',valor,'metros'
+        
+    def izquierda(self,valor):
+        print 'Das la vuelta en',valor,'grados a la izquierda'
+        
+    def derecha(self,valor):
+        print 'Das la vuelta en',valor,'grados a la derecha'
+    
+class Aereo(Movimiento):
+    
+    def despegar(self,altitud):
+        print 'Estoy volando',altitud,'mts sobre el nivel del mar'
+
+class Espacio(Movimiento,Aereo):
+    
+    def velocidad(self,valor):
+        print 'Estas en velocidad WARP',valor
+
+Carro=Movimiento()
+Carro.avanzar(30)
+Carro.avanzar(10)
+Carro.izquierda(45)
+Carro.avanzar(100)
+Carro.derecha(10)
+Carro.retroceder(67)
+
+Avion=Aereo()
+Avion.avanzar(100)
+Avion.despegar(1000)
+
+Voyager=Espacio()
+Voyager.despegar(4000)
+Voyager.velocidad(9.5)

funciones_excepciones_oop/oop_003.py

+class Movimiento:
+#    Velocidad=0
+
+    def __init__(self):
+        self.Velocidad=50
+
+    def avanzar(self,valor):
+        print 'Estas avanzando',valor,'metros'
+#        print 'La velocidad inicial es',self.Velocidad
+
+    def retroceder(self,valor):
+        print 'Estas retrocediendo',valor,'metros'
+
+    def izquierda(self,valor):
+        print 'Das la vuelta en',valor,'grados a la izquierda'
+
+    def __derecha(self,valor):
+        print 'Das la vuelta en',valor,'grados a la derecha'
+
+
+Carro=Movimiento()
+Carro.avanzar(10)
+Carro.izquierda(45)
+Carro.avanzar(100)
+#Carro.__derecha(80)
+#Carro._Movimiento__derecha(10)
+Carro.retroceder(67)
+#Carro.

funciones_excepciones_oop/oop_salon_clases.py

+HOLA='123'
+
+class Alumno:
+    nombreA='ND'
+
+    def saludar(self):
+        print 'Hola1'
+        print HOLA
+
+
+class Profesor:
+    nombreP='ND'
+
+    def hablar(self,mensaje):
+        print mensaje
+#        self.mensaje=mensaje
+#        print self.mensaje
+
+    def saludar(self):
+        print 'Hola2'
+#        print self.mensaje
+
+
+class Computadoras:
+
+    def encender(self):
+        print 'Encendio computadora'
+
+
+class SalonClases(Alumno, Profesor, Computadoras):
+
+    def __init__(self,alum,profe,mensaje):
+        self.nombreA=alum
+        self.nombreP=profe
+        self.hablar(mensaje)
+        print self.nombreA
+        self.saludar()
+        Profesor.saludar(self)
+
+
+
+LabA=SalonClases('Javier','Raquel','Hola!!')

funciones_excepciones_oop/suma_funciones.py

+def suma(param1,param2):
+    return param1+param2
+
+total=0
+for nume in range(50,100):
+    total=suma(total,nume)
+print 'El total es',total

gtk_glade/consultas.glade

+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--Generated with glade3 3.4.5 on Wed Apr  1 11:51:49 2009 -->
+<glade-interface>
+  <widget class="GtkWindow" id="VentanaPrincipal">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Sistema de Consultas</property>
+    <property name="window_position">GTK_WIN_POS_CENTER_ALWAYS</property>
+    <signal name="destroy" handler="on_VentanaPrincipal_destroy"/>
+    <child>
+      <widget class="GtkVBox" id="Caja">
+        <property name="visible">True</property>
+        <child>
+          <widget class="GtkLabel" id="Titulo">
+            <property name="width_request">600</property>
+            <property name="height_request">100</property>
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">Sistema de Consultas del Tribunal Constitucional</property>
+            <property name="justify">GTK_JUSTIFY_CENTER</property>
+          </widget>
+        </child>
+        <child>
+          <widget class="GtkTable" id="Formulario">
+            <property name="visible">True</property>
+            <property name="n_rows">4</property>
+            <property name="n_columns">4</property>
+            <child>
+              <widget class="GtkHBox" id="hbox4">
+                <property name="visible">True</property>
+                <child>
+                  <widget class="GtkButton" id="button3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="label" translatable="yes">button</property>
+                    <property name="response_id">0</property>
+                  </widget>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </widget>
+              <packing>
+                <property name="left_attach">3</property>
+                <property name="right_attach">4</property>
+                <property name="top_attach">2</property>
+                <property name="bottom_attach">3</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox3">
+                <property name="visible">True</property>
+                <child>
+                  <widget class="GtkButton" id="button2">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="label" translatable="yes">button</property>
+                    <property name="response_id">0</property>
+                  </widget>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </widget>
+              <packing>
+                <property name="left_attach">3</property>
+                <property name="right_attach">4</property>
+                <property name="top_attach">1</property>
+                <property name="bottom_attach">2</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox2">
+                <property name="visible">True</property>
+                <child>
+                  <widget class="GtkButton" id="button1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="label" translatable="yes">button</property>
+                    <property name="response_id">0</property>
+                  </widget>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </widget>
+              <packing>
+                <property name="left_attach">3</property>
+                <property name="right_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <widget class="GtkHSeparator" id="hseparator4">
+                <property name="height_request">50</property>
+                <property name="visible">True</property>
+              </widget>
+              <packing>
+                <property name="left_attach">3</property>
+                <property name="right_attach">4</property>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHSeparator" id="hseparator3">
+                <property name="visible">True</property>
+              </widget>
+              <packing>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHSeparator" id="hseparator2">
+                <property name="visible">True</property>
+              </widget>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="right_attach">3</property>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHSeparator" id="hseparator1">
+                <property name="visible">True</property>
+              </widget>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkEntry" id="DemandadoEntrada">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <signal name="button_press_event" handler="on_DemandadoEntrada_button_press_event"/>
+                <signal name="button_release_event" handler="on_DemandadoEntrada_button_release_event"/>
+                <signal name="activate" handler="on_DemandadoEntrada_activate"/>
+              </widget>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="right_attach">3</property>
+                <property name="top_attach">2</property>
+                <property name="bottom_attach">3</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkEntry" id="DemandanteEntrada">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <signal name="activate" handler="on_DemandanteEntrada_activate"/>
+              </widget>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="right_attach">3</property>
+                <property name="top_attach">1</property>
+                <property name="bottom_attach">2</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkEntry" id="ExpedienteEntrada">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <signal name="button_press_event" handler="on_ExpedienteEntrada_button_press_event"/>
+                <signal name="activate" handler="on_ExpedienteEntrada_activate"/>
+              </widget>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="right_attach">3</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="DemandadoLabel">
+                <property name="height_request">50</property>