Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tecnologías web + Python

1,172 views

Published on

Introducción a las tecnologías utilizadas en Internet. Introducción al lenguaje de programación Python.

Published in: Technology
  • Be the first to comment

Tecnologías web + Python

  1. 1. < Tecnologías web /> Víctor R. Ruiz <rvr@linotipo.es> Tenerife, 17 de noviembre de 2011jueves 17 de noviembre de 11
  2. 2. Internetjueves 17 de noviembre de 11
  3. 3. Internet http://es.wikipedia.org/wiki/Archivo:Internet_map_1024.jpgjueves 17 de noviembre de 11
  4. 4. Internet • Red de redes global. • Protocolo abierto: TCP/IP. • Cada ordenador tiene una dirección (IP). • Las comunicaciones se realizan por paquetes • TCP/UDP. • Protocolos. • IP/Puerto. • DNS.jueves 17 de noviembre de 11
  5. 5. WWWjueves 17 de noviembre de 11
  6. 6. WWW != Internetjueves 17 de noviembre de 11
  7. 7. WWW • Protocolo de comunicación: HTTP • Formato de contenidos: HTMLjueves 17 de noviembre de 11
  8. 8. WWW http://es.wikipedia.org/wiki/Archivo:First_Web_Server.jpgjueves 17 de noviembre de 11
  9. 9. WWW: HTTP http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocoljueves 17 de noviembre de 11
  10. 10. WWW: HTMLjueves 17 de noviembre de 11
  11. 11. WWW: HTML •Etiquetas •<div></div> •Atributos •<a href=””>linotipo.es</a> •Hojas de estilo •JavaScriptjueves 17 de noviembre de 11
  12. 12. Formatos de intercambio de datosjueves 17 de noviembre de 11
  13. 13. CSV Valores separados por comas http://es.wikipedia.org/wiki/CSVjueves 17 de noviembre de 11
  14. 14. XML http://es.wikipedia.org/wiki/XMLjueves 17 de noviembre de 11
  15. 15. XMLjueves 17 de noviembre de 11
  16. 16. JSON JavaScript Object Notation http://es.wikipedia.org/wiki/JSONjueves 17 de noviembre de 11
  17. 17. Introducción a Pythonjueves 17 de noviembre de 11
  18. 18. Python http://www.tiraecol.net/modules/comic/jueves 17 de noviembre de 11
  19. 19. Python • Lenguaje interpretado. • Fuertemente tipado. • Fácil de acceder a librerías en C. • Prototipado rápido de aplicaciones. • Muy productivo. • Librería estándar fácil de usar. • Lenguaje oficial Google: Python, Java, C++jueves 17 de noviembre de 11
  20. 20. Python • En Python no hay corchetes para indicar bloques. • Los bloques se indican con identación.jueves 17 de noviembre de 11
  21. 21. Python: Funciones def nombre_funcion(): ... returnjueves 17 de noviembre de 11
  22. 22. Python: Parámetros def nombre_funcion(p1, p2): ... return p1jueves 17 de noviembre de 11
  23. 23. Python: Doc string def primer_parametro(p1, p2): “”” Esta función devuelve el primer parámetro ””” return p1jueves 17 de noviembre de 11
  24. 24. Python: print def imprimir(p1, p2): “”” Imprime los parámetros “”” print p1, p2 imprimir(“a”, “b”)jueves 17 de noviembre de 11
  25. 25. Python: Formateo print def imprimir(p1, p2): “”” Imprime los parámetros “”” print “%s - %s” % (p1, p2) imprimir(“a”, “b”)jueves 17 de noviembre de 11
  26. 26. Python: if-else def imprimir_si(valor): “”” Imprime los parámetros “”” if (valor == “a”): print valor else: print “Parámetro no es ‘a’” imprimir_si(“a”)jueves 17 de noviembre de 11
  27. 27. Python: Diccionarios dicc = { ‘peras’: 1, ‘manzanas’: 2 } print dicc[‘a’]jueves 17 de noviembre de 11
  28. 28. Python: Diccionarios dicc = { ‘peras’: 1, ‘manzanas’: 2 } print dicc[‘peras’] dicc[‘naranjas’] = 20 print dicc[‘naranjas’]jueves 17 de noviembre de 11
  29. 29. Python: Diccionarios dicc = { ‘peras’: 1, ‘manzanas’: 2 } print dicc[‘peras’] dicc[‘naranjas’] = 20 print dicc[‘naranjas’] for fruta in dicc: print dicc[fruta]jueves 17 de noviembre de 11
  30. 30. Python: Tuplas Listas inmutables lista = (1, 20, 300, 4000) print lista[0]jueves 17 de noviembre de 11
  31. 31. Python: Tuplas Listas inmutables lista = (1, 20, 300, 4000) print lista[0] # Primer elemento print lista[-1] # Último elementojueves 17 de noviembre de 11
  32. 32. Python: Tuplas Listas inmutables lista = (1, 20, 300, 4000) print lista[0] # Primer elemento print lista[-1] # Último elemento # Subconjuntos lista[:2] # Del 1er al 3er elementojueves 17 de noviembre de 11
  33. 33. Python: Tuplas Listas inmutables lista = (1, 20, 300, 4000) # Recorrer tupla for elemento in lista: print elementojueves 17 de noviembre de 11
  34. 34. Python: Listas Listas mutables lista = [1, 20, 300, 4000] print lista[0] print lista[-1] # Añadir elementos lista.append(50000)jueves 17 de noviembre de 11
  35. 35. Python: Librerías import lib from lib import objetojueves 17 de noviembre de 11
  36. 36. Python: Objetos class Fruta: def __init__(self, nombre_fruta): “”” Constructor “”” self.nombre = nombre_fruta def imprimir_nombre(self): print self.nombre f = Fruta(“manzana”) f.imprimir_nombre()jueves 17 de noviembre de 11
  37. 37. Python: Ficheros Modo lectura # Abrir fichero leer = open(“nombre.txt”, “r”) # Imprimir todas las líneas linea = leer.readline() while (linea): print linea linea = leer.readline() # Cerrar fichero escribir.close()jueves 17 de noviembre de 11
  38. 38. Python: Ficheros Modo escritura # Abrir fichero escribir = open(“fichero.txt”, “w”) # Escribir contenido linea = “” escribir.write(linea) # Cerrar fichero escribir.close()jueves 17 de noviembre de 11
  39. 39. Python: SQLite Crear/Abrir base de datos # Abrir conn = sqlite3.connect(“bbdd.sql”) cursor = conn.cursor() # Cerrar cursor.close()jueves 17 de noviembre de 11
  40. 40. Python: SQLite Crear tablas # Abrir conn = sqlite3.connect(“bbdd.sql”) cursor = conn.cursor() # Crear tabla cursor.execute(“”” CREATE TABLE usuarios ( usuario TEXT, twitter TEXT, facebook TEXT, plus TEXT )“””) # Guardar cambios conn.commit() cursor.close()jueves 17 de noviembre de 11
  41. 41. Python: SQLite Insertar datos # Abrir conn = sqlite3.connect(“bbdd.sql”) cursor = conn.cursor() # Crear tabla cursor.execute(“”” INSERT INTO usuarios VALUES ( ‘rvr’, ‘http://twitter.com/vrruiz’, ‘http://facebook.com/vrruiz/’, ‘https://plus.google.com/115241315008695484224/posts’ ) “””) # Guardar cambios conn.commit()jueves 17 de noviembre de 11
  42. 42. Python: SQLite Consultar tablas # Abrir conn = sqlite3.connect(“bbdd.sql”) cursor = conn.cursor() # Consultar datos cursor.execute(“””SELECT * FROM usuarios“””) for usuario in cursor: print usuario # Cerrar cursor cursor.close()jueves 17 de noviembre de 11
  43. 43. Python: HTTP import urllib2 # Abrir conexión http pagina = urllib2.open(“http://twitter.com/vrruiz”) # Leer contenidos contenidos = pagina.read() print contenidos # Cerrar conexión pagina.close()jueves 17 de noviembre de 11
  44. 44. Python: JSON from simplejson import json # Codificar estructura de datos a JSON codificado = json.dumps({‘usuario’ : ‘rvr’ }) print codificadojueves 17 de noviembre de 11
  45. 45. Python: JSON from simplejson import json # Decodificar JSON a estructura de datos decodificado = json.loads(“{ ‘usuario’ : ‘rvr’ }”) print decodificadojueves 17 de noviembre de 11
  46. 46. Python: Recursos • Inmersión en Python • Documentación oficial: Libreríasjueves 17 de noviembre de 11
  47. 47. ¡Gracias por su atención!jueves 17 de noviembre de 11
  48. 48. Contacto Víctor R. Ruiz twitter.com/vrruiz · rvr.linotipo.es > Otras presentaciones disponibles en < http://linotipo.es/jueves 17 de noviembre de 11
  49. 49. Cómo obtener información en redes sociales Víctor R. Ruiz <rvr@linotipo.es> Tenerife, 14-18 de noviembre de 2011jueves 17 de noviembre de 11

×