SlideShare una empresa de Scribd logo
1 de 65
Descargar para leer sin conexión
1
Python para programadores
Pythonisfastenoughforoursiteandallowsustoproducemaintainablefeaturesinrecord
times,withaminimumofdevelopers—
CuongDo,SoftwareArchitect,YouTube.com
Ivan Meza
2
Tipos de datos
True 
False
1 
2 
1.3 
0.34 
"hola" 
"mundo"
3
4
Variables
variable=5 
variable+1 
variable="hola"
variable+" mundo"
5
6
Estructuras de datos
[1,2,3] 
(1,2,3) 
{"hola":1,"mundo":2,"!",3}
7
8
Listas
lista=[1,2,3] 
lista.append(4) 
lista.append(5) 
print lista 
lista.pop() 
print lista 
print len(lista)
9
print lista[0] 
print lista[­1] 
print lista[1:2] 
print list2[:1] 
print lista[­2:] 
lista[1]=20 
print lista
10
lista=["hola",1,"mundo"] 
print lista 
lista.append(True) 
print lista
11
12
Tuplas
tupla=(1,2,3) 
print tupla[0] 
print tupla[­1] 
print tupla[1:2] 
print tupla[:2] 
print tupla[­2:] 
print len(tupla)
13
14
Diccionarios
diccionario={'hola':3,'mundo':2,'!':1} 
print diccionario 
print diccionario['mundo'] 
print diccionario.keys() 
print diccionario.values() 
print diccionario.items()
15
rara=[({'hola':1,"mundo":2},"hola mundo"),["hola","mundo"]]
16
17
Programas
18
Ejecución
python miprograma.py
instruccion1 
instruccion2 
instruccion_de_control: 
  instruccion_bloque_1 
  instruccion_bloque_2 
instruccion_de_control: 
  instruccion_bloque_3 
  instruccion_bloque_4 
instruccion_de_control: 
  instruccion_de_control: 
    instruccion_bloque_5 
    instruccion_bloque_6 
    instruccion_bloque_7 
    instruccion_bloque_8
19
20
Control: _if_
if variable == 0: 
  print "Este valor es igual a cero" 
else: 
  print "Este valor no es igual a cero"
21
if variable == 0: 
  print "Este valor es igual a cero" 
elif variable==1: 
  print "Este valor no es igual a uno" 
elif variable==2: 
  print "Este valor no es igual a dos" 
else: 
  print "Este valor no es cero, uno o dos"
22
23
Control: _for_
24
Control: _for_
lista=['hola','mundo'] 
for w in lista: 
  print "Este es un elemento de la lista",w
25
lista=range(10) 
print lista 
for i in lista: 
  print "Contando...",i
26
tupla=(1,2,3) 
print "Iterando una tupla",tupla 
for i in tupla: 
  print i
27
diccionario={"hola":1,"mundo":2} 
print "Iterando el diccionario directamente",diccionario 
for k,v in diccionario.itermitems(): 
  print "Llave:",i 
  print "Valor:",v
28
print "Iterando la listas de lementos de un diccionario",diccionario 
for k,v in diccionario.items(): 
  print "Llave:",i 
  print "Valor:",v
29
30
Control: _while_
i=0 
while i<10: 
  print "Contanndo con while...",i 
  i+=1
31
i=0 
while True: 
  print "Contanndo con while...",i 
  if i==10: 
    break 
  i+=1
32
while True: 
  pass #Esta instrucción no hace nada
33
34
Modulos
35
import time 
print "Hola..." 
time.sleep(1) 
print "...mundo!"
36
help(time)
37
from math import log 
print "Log of 100",log(100)
38
import random as ra 
print "Escogeré un valor", ra.choice(['one','two','three'])
39
40
Funciones
def print_percentage(val): 
  per=val*100 
  print str(per)+"%" 
print_percentage(0.1) 
print_percentage(0.02)
41
def suma_lista(lista): 
  val=0 
  for l in lista: 
    val+=1 
  return val 
print suma_lista(range(20)) 
print suma_lista(range(200))
42
def fib(n): 
  if n < 2: 
    return n 
  return fib(n­2) + fib(n­1) 
fib(10) 
fib(20)
43
44
Modulos propios
import mimodulo 
    mimodulo.print_percentage(0.1) 
    mimodulo.print_percentage(0.02)
    mimodulo.suma_lista(range(20)) 
    mimodulo.suma_lista(range(200))
    mimodulo.fib(10) 
    mimodulo.fib(20)
45
46
Archivos
archivo=open('tmp','w') 
for i in range(10): 
  print >> archivo, i, "hola mundo!" 
archivo.close()
47
archivo=open('tmp',"r") 
    for linea in archivo:
        print linea 
    archivo.close()
48
archivo=open('tmp') 
for linea in archivo: 
  linea=linea.strip() 
  print linea 
archivo.close()
49
archivo=open('tmp') 
for linea in archivo: 
  line=linea.strip() 
  bits=line.split() 
  print bits[­1] 
archivo.close()
50
51
Más sobre listas
lista_original=range(100) 
nueva_lista=[i*i for i in lista_original] 
print nueva_lista
52
nueva_lista=[i*i for i in lista_original if i%2==0] 
print nueva_lista
53
54
Imprimiendo cadenas
lista=[(1,2),(2,3),(3,4),(4,5),(5,6)] 
for val0,val1 in lista: 
  print "{1} {0}".format(val0,val1)
55
lista=[(i*1.0/100,j*1.0/100) for i,j in lista] 
for val0,val1 in lista: 
  print "{1:2.3f} {0:2.5f}".format(val0,val1)
56
lista=["{0:2.3f}".format(i) for i,j in lista ] 
print ":".join(lista)
57
58
Habilidades Ninja
def count(palabra,ini=0,fin=20): 
  for i in range(ini,fin): 
    print palabra,i 
    count("Contando...",10,30) 
    count("Contando de nuevo...",15) 
    count("Contando de nuevo otra vez...") 
    count("Contando de nuevo...",ini=3,fin=8) 
    count("Contando de nuevo...",fin=5,ini=3)
59
import argparse 
p = argparse.ArgumentParser("Ejemplo") 
p.add_argument("Archivo_1",default=None, 
      action="store", help="Archivo Uno") 
p.add_argument("Archivo_2",default=None, 
      action="store", help="Archivo Dos") 
p.add_argument("­o", "­­opcion1",default=None,type=str, 
      action="store", dest="op_1", 
      help="Opcion 2") 
p.add_argument("", "­­opcion2",default="Valor2",type=str, 
      action="store", dest="op_2", 
      help="Opcion 2") 
p.add_argument("­n", "­­nueva_opcion",default="Valor3",type=str, 
      action="store", dest="op_3", 
      help="Argumento") 
opts = p.parse_args()
60
python programa.py 
python programa.py ­h 
python programa.py archivo1 archivo2 
python 12_linea_de_commandos.py ­o 1 ­­opcion2 2 ­n 3 archivo1 archivo2
61
62
Errores
1/0
63
lista=range(100) 
residuos_3={} 
for i in lista:
  try: 
    residuos_3[i%3]+=1 
  except KeyError: 
    residuos_3[i%3]=1
ivanvladimir@gmail.com ivanvladimir.github.io ivanvladimir
64
65
Python para programadores by is licensed under a
.
Creado a partir de la obra en
.
Ivan V. Meza Ruiz
Creative Commons Reconocimiento 4.0 Internacional License
http://turing.iimas.unam.mx/~ivanvladimir/slides/lfya/python.html

Más contenido relacionado

Más de Ivan Vladimir Meza-Ruiz

Autómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesAutómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesIvan Vladimir Meza-Ruiz
 
La pregunta para la que no me puedo decidir
La pregunta para la que no me puedo decidirLa pregunta para la que no me puedo decidir
La pregunta para la que no me puedo decidirIvan Vladimir Meza-Ruiz
 
Máquinas de turing o máquinas con cola
Máquinas de turing o máquinas con colaMáquinas de turing o máquinas con cola
Máquinas de turing o máquinas con colaIvan Vladimir Meza-Ruiz
 

Más de Ivan Vladimir Meza-Ruiz (20)

Jerarquias de Chomsky 2018-II
Jerarquias de Chomsky 2018-IIJerarquias de Chomsky 2018-II
Jerarquias de Chomsky 2018-II
 
Jerarquías de chomsky 2018 i
Jerarquías de chomsky 2018 iJerarquías de chomsky 2018 i
Jerarquías de chomsky 2018 i
 
Jerarquías de chomsky 2017 II
Jerarquías de chomsky 2017 IIJerarquías de chomsky 2017 II
Jerarquías de chomsky 2017 II
 
De qué tamaño es mi problema
De qué tamaño es mi problemaDe qué tamaño es mi problema
De qué tamaño es mi problema
 
Revisión de problemas
Revisión de problemasRevisión de problemas
Revisión de problemas
 
Máquinas de turing
Máquinas de turingMáquinas de turing
Máquinas de turing
 
Mt calculadora
Mt calculadoraMt calculadora
Mt calculadora
 
Autómatas lineales con frontera
Autómatas lineales con fronteraAutómatas lineales con frontera
Autómatas lineales con frontera
 
Autómata de pila
Autómata de pilaAutómata de pila
Autómata de pila
 
Automata de pilas y sus límetes
Automata de pilas y sus límetesAutomata de pilas y sus límetes
Automata de pilas y sus límetes
 
Afnd, afnd e y er
Afnd, afnd e y erAfnd, afnd e y er
Afnd, afnd e y er
 
Gramáticas libres de contexto
Gramáticas libres de contextoGramáticas libres de contexto
Gramáticas libres de contexto
 
Problemas con conjuntos
Problemas con conjuntosProblemas con conjuntos
Problemas con conjuntos
 
Autómatas finitos y expresiones regulares
Autómatas finitos y expresiones regularesAutómatas finitos y expresiones regulares
Autómatas finitos y expresiones regulares
 
Recapitulación
RecapitulaciónRecapitulación
Recapitulación
 
La pregunta para la que no me puedo decidir
La pregunta para la que no me puedo decidirLa pregunta para la que no me puedo decidir
La pregunta para la que no me puedo decidir
 
Problemas, problemas y más problemas
Problemas, problemas y más problemasProblemas, problemas y más problemas
Problemas, problemas y más problemas
 
Máquinas de turing o máquinas con cola
Máquinas de turing o máquinas con colaMáquinas de turing o máquinas con cola
Máquinas de turing o máquinas con cola
 
Máquinas que comen máquinas
Máquinas que comen máquinasMáquinas que comen máquinas
Máquinas que comen máquinas
 
Depende del contexto
Depende del contextoDepende del contexto
Depende del contexto
 

Último

Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresJonathanCovena1
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONamelia poma
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...JoseMartinMalpartida1
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
Linea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docxLinea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docxEnriqueLineros1
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfRosabel UA
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 

Último (20)

Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
Linea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docxLinea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docx
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 

Python para programadores