SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Desarrollar un módulo para
                Visuse




                              José Luis López Pino
http://visuse.wordpress.com
Python - Propiedades

   Es un lenguaje de alto nivel.
   Es un lenguaje interpretado (se ejecuta con un
    intérprete, no se compila).
   Es multiparadigma:
       Es orientado a objetos.
       Es funcional.
   Es fácil de aprender.
   Es libre.
   Es portable.
Python - Propiedades

   Es dinámicamente tipado (una variable puede
    tomar valores de distintos tipos).
   Es fuertemente tipado (una variable no se
    puede tratar como si fuese de otro tipo).
   Es implícitamente tipado (no hay que declarar
    las variables que usamos).
   Distingue entre mayúsculas y minúsculas.
Python - Sintaxis

   Las sentencias no necesitan carácter de
    terminación.
   Los bloques son especificados por indentación.
   Los comentarios comienzan con # .
   Asignamos con =.
   Comprobamos la igualdad con ==.
   Incrementamos/decrementamos con += y -=.
Python – Estructuras de datos

   Tenemos listas, tuplas y diccionarios.
   Las listas de comportan como vectores de una
    dimensión.
   Los vectores pueden ser de cualquier tipo,
    incluso puedes mezclar tipos.
   El primer elemento es 0 y -1 el último.
   Una variable puede apuntar a una función.
   El operador : sirve para acceder a rangos de un
    vector.
Python – Cadenas de texto

   Se pueden usar con comillas dobles o simples.
   Para las cadenas multilinea podemos usamos
    tres comillas (simples o dobles).
   Podemos meter valores dentro de una cadena
    utilizando el operador %:
       >>>print "Name: %snNumber: %snString: %s" %
        (myclass.name, 3, 3 * "-")
   También podemos hacer sustituciones con un
    diccionario:
       >>> print "This %(verb)s a %(noun)s." % {"noun":
        "test", "verb": "is"}
Python – Estructuras de control
1.for number in range(10):
2. if number in (3, 4, 7, 9):
3.     Blablabla
4. elif number == 8:
5.     bleblebleble
6. else:
7.     blibliblibli
8. else:
9.     blebleble
10.while loquesea == 1:
11. print "Fantástico"
Python - Funciones

   Se declaran con “def” keyword.
   Los parámetros se pasan por referencia.
   Sin embargo, los tipos inmutables (tuplas,
    enteros, cadenas, etc) no pueden ser
    cambiados.
   Podemos especificar parámetros opcionales
    asignándoles un valor por defecto.

    # Soy un comentario
    def soy_una_funcion(lista, entero=2, cadena='por defecto'):
      lista.append(cadena)
Python - Clases

   Admite herencia múltiple.

    class MyClass:
       common = 10
       def __init__(self):
         self.myvariable = 3
       def myfunction(self, arg1, arg2):
         return self.myvariable

    # This is the class instantiation
    >>> classinstance = MyClass()
    >>> classinstance.myfunction(1, 2)
Python - Excepciones

def some_function():
  try:
     # Division by zero raises an exception
     10 / 0
  except ZeroDivisionError:
     print "Oops, invalid."
  else:
     # Exception didn't occur, we're good.
     pass
  finally:
     # This is executed after the code block is run
     # and all exceptions have been handled, even
     # if a new exception is raised while handling.
     print "We're done with that."
Python – Importar

   Importar una biblioteca:
       import libreria
   Importar una función concreta:
       from libreria import funcion
¿Qué necesitamos para trabajar?

   Geany: un editor para Python.
   Subversion: sistema de control de versiones.
   Python ~2.6.2.
   Elegir un buscador.
Geany
   IDE ligero o editor con las funciones básicas de
    un IDE.
   Multiplataforma.
   http://www.geany.org
Empezamos
   Instalamos Python
       Ubuntu: sudo apt-get install python2.6
       Windows: descargar de python.org la 2.6.4.
   Alta en la forja de rediris.
   Descargamos el proyecto:
       svn checkout https://forja.rediris.es/svn/cusl4-visuse
   Los módulos los tenemos en
    trunk/visuse/modulos
       Añadimos la clase a classes.py
       Escribimos el módulo en Modulo_Nombre.py
Contenido del módulo

   Obtenemos los datos del buscador (usando
    XML, JSON o lo que corresponda).
   Creamos una instancia de la clase por cada
    resultado.
   Creamos una lista de resultados.
   Mostramos la lista en pantalla para comprobar
    que no hay problemas.
Referencias

   Python in 10 minutes.
   Dive into Python.
   Python para todos.
Eso es todo

   ¿Alguna pregunta?




    Imagen de Discoveryschool.com

Más contenido relacionado

La actualidad más candente (19)

Calse 3 JAVA 2012
Calse 3 JAVA 2012Calse 3 JAVA 2012
Calse 3 JAVA 2012
 
Python (ejercicios)
Python (ejercicios)Python (ejercicios)
Python (ejercicios)
 
Programacion Netlogo
Programacion NetlogoProgramacion Netlogo
Programacion Netlogo
 
Palabras reservadas en java y tipos de datos en java
Palabras reservadas en java y tipos de datos en javaPalabras reservadas en java y tipos de datos en java
Palabras reservadas en java y tipos de datos en java
 
Introducción a scala
Introducción a scalaIntroducción a scala
Introducción a scala
 
Comandos de java
Comandos de javaComandos de java
Comandos de java
 
Clase 4 JAVA 2012
Clase 4 JAVA 2012Clase 4 JAVA 2012
Clase 4 JAVA 2012
 
Semana 1 Estructuras de Datos en Java
Semana 1   Estructuras de Datos en JavaSemana 1   Estructuras de Datos en Java
Semana 1 Estructuras de Datos en Java
 
Tutorial de php
Tutorial de phpTutorial de php
Tutorial de php
 
Python básico I
Python básico IPython básico I
Python básico I
 
Python básico II
Python básico IIPython básico II
Python básico II
 
Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientes
 
Python 4
Python 4Python 4
Python 4
 
Clase 4/4 Curso Introducción a Python 2012
Clase 4/4 Curso Introducción a Python 2012Clase 4/4 Curso Introducción a Python 2012
Clase 4/4 Curso Introducción a Python 2012
 
Semana 6 Módulos en Python Entrega 2
Semana 6   Módulos en Python Entrega 2Semana 6   Módulos en Python Entrega 2
Semana 6 Módulos en Python Entrega 2
 
Introducción a Scala
Introducción a ScalaIntroducción a Scala
Introducción a Scala
 
Clase 1 Curso Introducción a Python 2012
Clase 1 Curso Introducción a Python 2012Clase 1 Curso Introducción a Python 2012
Clase 1 Curso Introducción a Python 2012
 
Semana 1 Estructuras de Control en Java
Semana 1   Estructuras de Control en JavaSemana 1   Estructuras de Control en Java
Semana 1 Estructuras de Control en Java
 
Python06
Python06Python06
Python06
 

Destacado

High school e portfolio
High school e portfolioHigh school e portfolio
High school e portfoliogokicchi
 
Derechos124e55
Derechos124e55Derechos124e55
Derechos124e55Alan Gomez
 
Awkward - San Cisco
Awkward - San CiscoAwkward - San Cisco
Awkward - San CiscoKidVox
 
Cmgt 445 entire course
Cmgt 445 entire courseCmgt 445 entire course
Cmgt 445 entire courseyouvsignedio
 
Estrategia de motivacion opd iv
Estrategia de motivacion opd ivEstrategia de motivacion opd iv
Estrategia de motivacion opd ivjuanpotreros
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 6
Implementação de Aplicações Móveis e Jogos com Python - Aula 6Implementação de Aplicações Móveis e Jogos com Python - Aula 6
Implementação de Aplicações Móveis e Jogos com Python - Aula 6Flávio Ribeiro
 
Современные формы доступа к электронным информационным ресурсам в библиотеках
Современные формы доступа к электронным информационным ресурсам в библиотекахСовременные формы доступа к электронным информационным ресурсам в библиотеках
Современные формы доступа к электронным информационным ресурсам в библиотекахbntulibrary
 
12.01.2010 revelation
12.01.2010 revelation12.01.2010 revelation
12.01.2010 revelationLaura Adams
 
Ein_Platz_genannt_Erde_730
Ein_Platz_genannt_Erde_730Ein_Platz_genannt_Erde_730
Ein_Platz_genannt_Erde_730Guido Göbel
 
Poo interacao entre_objetos_blue_j_ii
Poo interacao entre_objetos_blue_j_iiPoo interacao entre_objetos_blue_j_ii
Poo interacao entre_objetos_blue_j_iisamuelthiago
 
чуй гласа на дивите животни
чуй гласа на дивите животничуй гласа на дивите животни
чуй гласа на дивите животниguesteab4c9
 

Destacado (20)

Escuelas generadoras de vida comunitaria
Escuelas generadoras de vida comunitariaEscuelas generadoras de vida comunitaria
Escuelas generadoras de vida comunitaria
 
High school e portfolio
High school e portfolioHigh school e portfolio
High school e portfolio
 
Derechos124e55
Derechos124e55Derechos124e55
Derechos124e55
 
Awkward - San Cisco
Awkward - San CiscoAwkward - San Cisco
Awkward - San Cisco
 
11.11.10 romans
11.11.10 romans11.11.10 romans
11.11.10 romans
 
Calidad esta en el proceso
Calidad esta en el procesoCalidad esta en el proceso
Calidad esta en el proceso
 
Cmgt 445 entire course
Cmgt 445 entire courseCmgt 445 entire course
Cmgt 445 entire course
 
Internet del futuro
Internet del futuroInternet del futuro
Internet del futuro
 
Qué hago....-
 Qué hago....- Qué hago....-
Qué hago....-
 
Estrategia de motivacion opd iv
Estrategia de motivacion opd ivEstrategia de motivacion opd iv
Estrategia de motivacion opd iv
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 6
Implementação de Aplicações Móveis e Jogos com Python - Aula 6Implementação de Aplicações Móveis e Jogos com Python - Aula 6
Implementação de Aplicações Móveis e Jogos com Python - Aula 6
 
Doc1
Doc1Doc1
Doc1
 
Positively
PositivelyPositively
Positively
 
Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4
 
Современные формы доступа к электронным информационным ресурсам в библиотеках
Современные формы доступа к электронным информационным ресурсам в библиотекахСовременные формы доступа к электронным информационным ресурсам в библиотеках
Современные формы доступа к электронным информационным ресурсам в библиотеках
 
12.01.2010 revelation
12.01.2010 revelation12.01.2010 revelation
12.01.2010 revelation
 
Ein_Platz_genannt_Erde_730
Ein_Platz_genannt_Erde_730Ein_Platz_genannt_Erde_730
Ein_Platz_genannt_Erde_730
 
Poo interacao entre_objetos_blue_j_ii
Poo interacao entre_objetos_blue_j_iiPoo interacao entre_objetos_blue_j_ii
Poo interacao entre_objetos_blue_j_ii
 
Cap2b
Cap2bCap2b
Cap2b
 
чуй гласа на дивите животни
чуй гласа на дивите животничуй гласа на дивите животни
чуй гласа на дивите животни
 

Similar a Desarrollar un módulo para Visuse - Python propiedades, sintaxis, estructuras de datos y control

Investigacion de Python.pptx
Investigacion de Python.pptxInvestigacion de Python.pptx
Investigacion de Python.pptxSelTrejo
 
Conceptos básicos de un lenguaje de programación
Conceptos básicos de un lenguaje de programaciónConceptos básicos de un lenguaje de programación
Conceptos básicos de un lenguaje de programaciónEdison López Díaz
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Javasantosisidrorivera
 
Trabajo de desarrollo de software(java)yanina y yenny
Trabajo de desarrollo de software(java)yanina y yennyTrabajo de desarrollo de software(java)yanina y yenny
Trabajo de desarrollo de software(java)yanina y yennyyenny isabel cuello moron
 
Shell script
Shell scriptShell script
Shell scriptuniminuto
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...Eudris Cabrera
 
Software para el aprendizaje de la programación EC 2. Presentación 3: Python
 Software para el aprendizaje de la programación EC 2. Presentación 3: Python Software para el aprendizaje de la programación EC 2. Presentación 3: Python
Software para el aprendizaje de la programación EC 2. Presentación 3: PythonUCC_Elearning
 
JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxFamiliaAyluardo
 

Similar a Desarrollar un módulo para Visuse - Python propiedades, sintaxis, estructuras de datos y control (20)

Presentacion Python
Presentacion  Python Presentacion  Python
Presentacion Python
 
Aprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación PythonAprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación Python
 
Investigacion de Python.pptx
Investigacion de Python.pptxInvestigacion de Python.pptx
Investigacion de Python.pptx
 
Conceptos básicos de un lenguaje de programación
Conceptos básicos de un lenguaje de programaciónConceptos básicos de un lenguaje de programación
Conceptos básicos de un lenguaje de programación
 
Lenguaje de Alto Nivel (I Bimestre)
Lenguaje de Alto Nivel (I Bimestre)Lenguaje de Alto Nivel (I Bimestre)
Lenguaje de Alto Nivel (I Bimestre)
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
 
Trabajo de desarrollo de software(java)yanina y yenny
Trabajo de desarrollo de software(java)yanina y yennyTrabajo de desarrollo de software(java)yanina y yenny
Trabajo de desarrollo de software(java)yanina y yenny
 
Shell script
Shell scriptShell script
Shell script
 
Java
JavaJava
Java
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
 
Software para el aprendizaje de la programación EC 2. Presentación 3: Python
 Software para el aprendizaje de la programación EC 2. Presentación 3: Python Software para el aprendizaje de la programación EC 2. Presentación 3: Python
Software para el aprendizaje de la programación EC 2. Presentación 3: Python
 
Presentación appy/pod
Presentación appy/podPresentación appy/pod
Presentación appy/pod
 
TIPOS DE DATOS MATLAB
TIPOS DE DATOS MATLABTIPOS DE DATOS MATLAB
TIPOS DE DATOS MATLAB
 
Taller ruby
Taller rubyTaller ruby
Taller ruby
 
Taller Python
Taller PythonTaller Python
Taller Python
 
Lenguaje de Alto Nivel
Lenguaje de Alto NivelLenguaje de Alto Nivel
Lenguaje de Alto Nivel
 
Php basico
Php basicoPhp basico
Php basico
 
JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptx
 
Manual de Java
Manual de JavaManual de Java
Manual de Java
 

Más de Jose Luis Lopez Pino

Lessons learnt from applying PyData to GetYourGuide marketing
Lessons learnt from applying PyData to GetYourGuide marketingLessons learnt from applying PyData to GetYourGuide marketing
Lessons learnt from applying PyData to GetYourGuide marketingJose Luis Lopez Pino
 
BDS14 Big Data Analytics to the masses
BDS14 Big Data Analytics to the massesBDS14 Big Data Analytics to the masses
BDS14 Big Data Analytics to the massesJose Luis Lopez Pino
 
Massive scale analytics with Stratosphere using R
Massive scale analytics with Stratosphere using RMassive scale analytics with Stratosphere using R
Massive scale analytics with Stratosphere using RJose Luis Lopez Pino
 
Scheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data ClustersScheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data ClustersJose Luis Lopez Pino
 
High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)Jose Luis Lopez Pino
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)Jose Luis Lopez Pino
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itJose Luis Lopez Pino
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itJose Luis Lopez Pino
 
Firefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libresFirefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libresJose Luis Lopez Pino
 
Presentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De CarreraPresentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De CarreraJose Luis Lopez Pino
 
Presentacion Visuse para el Hachathón
Presentacion Visuse para el HachathónPresentacion Visuse para el Hachathón
Presentacion Visuse para el HachathónJose Luis Lopez Pino
 

Más de Jose Luis Lopez Pino (20)

Lessons learnt from applying PyData to GetYourGuide marketing
Lessons learnt from applying PyData to GetYourGuide marketingLessons learnt from applying PyData to GetYourGuide marketing
Lessons learnt from applying PyData to GetYourGuide marketing
 
BDS14 Big Data Analytics to the masses
BDS14 Big Data Analytics to the massesBDS14 Big Data Analytics to the masses
BDS14 Big Data Analytics to the masses
 
Massive scale analytics with Stratosphere using R
Massive scale analytics with Stratosphere using RMassive scale analytics with Stratosphere using R
Massive scale analytics with Stratosphere using R
 
Metadata in Business Intelligence
Metadata in Business IntelligenceMetadata in Business Intelligence
Metadata in Business Intelligence
 
Scheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data ClustersScheduling and sharing resources in Data Clusters
Scheduling and sharing resources in Data Clusters
 
Distributed streaming k means
Distributed streaming k meansDistributed streaming k means
Distributed streaming k means
 
High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)High level languages for Big Data Analytics (Report)
High level languages for Big Data Analytics (Report)
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
 
RDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use itRDFa: introduction, comparison with microdata and microformats and how to use it
RDFa: introduction, comparison with microdata and microformats and how to use it
 
Firefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libresFirefox Vs. Chromium: Guerra de los navegadores libres
Firefox Vs. Chromium: Guerra de los navegadores libres
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
 
Presentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De CarreraPresentacion Proyecto Fin De Carrera
Presentacion Proyecto Fin De Carrera
 
Memoria Proyecto Fin de Carrera
Memoria Proyecto Fin de CarreraMemoria Proyecto Fin de Carrera
Memoria Proyecto Fin de Carrera
 
Presentacion CUSL nacional
Presentacion CUSL nacionalPresentacion CUSL nacional
Presentacion CUSL nacional
 
Resumen del proyecto Visuse
Resumen del proyecto VisuseResumen del proyecto Visuse
Resumen del proyecto Visuse
 
Presentacion cusl granadino
Presentacion cusl granadinoPresentacion cusl granadino
Presentacion cusl granadino
 
Como hacer un módulo para Visuse
Como hacer un módulo para VisuseComo hacer un módulo para Visuse
Como hacer un módulo para Visuse
 
Visuse: resumen del I Hackathon
Visuse: resumen del I HackathonVisuse: resumen del I Hackathon
Visuse: resumen del I Hackathon
 
Presentacion Visuse para el Hachathón
Presentacion Visuse para el HachathónPresentacion Visuse para el Hachathón
Presentacion Visuse para el Hachathón
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 

Último (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 

Desarrollar un módulo para Visuse - Python propiedades, sintaxis, estructuras de datos y control

  • 1. Desarrollar un módulo para Visuse José Luis López Pino http://visuse.wordpress.com
  • 2. Python - Propiedades  Es un lenguaje de alto nivel.  Es un lenguaje interpretado (se ejecuta con un intérprete, no se compila).  Es multiparadigma:  Es orientado a objetos.  Es funcional.  Es fácil de aprender.  Es libre.  Es portable.
  • 3. Python - Propiedades  Es dinámicamente tipado (una variable puede tomar valores de distintos tipos).  Es fuertemente tipado (una variable no se puede tratar como si fuese de otro tipo).  Es implícitamente tipado (no hay que declarar las variables que usamos).  Distingue entre mayúsculas y minúsculas.
  • 4. Python - Sintaxis  Las sentencias no necesitan carácter de terminación.  Los bloques son especificados por indentación.  Los comentarios comienzan con # .  Asignamos con =.  Comprobamos la igualdad con ==.  Incrementamos/decrementamos con += y -=.
  • 5. Python – Estructuras de datos  Tenemos listas, tuplas y diccionarios.  Las listas de comportan como vectores de una dimensión.  Los vectores pueden ser de cualquier tipo, incluso puedes mezclar tipos.  El primer elemento es 0 y -1 el último.  Una variable puede apuntar a una función.  El operador : sirve para acceder a rangos de un vector.
  • 6. Python – Cadenas de texto  Se pueden usar con comillas dobles o simples.  Para las cadenas multilinea podemos usamos tres comillas (simples o dobles).  Podemos meter valores dentro de una cadena utilizando el operador %:  >>>print "Name: %snNumber: %snString: %s" % (myclass.name, 3, 3 * "-")  También podemos hacer sustituciones con un diccionario:  >>> print "This %(verb)s a %(noun)s." % {"noun": "test", "verb": "is"}
  • 7. Python – Estructuras de control 1.for number in range(10): 2. if number in (3, 4, 7, 9): 3. Blablabla 4. elif number == 8: 5. bleblebleble 6. else: 7. blibliblibli 8. else: 9. blebleble 10.while loquesea == 1: 11. print "Fantástico"
  • 8. Python - Funciones  Se declaran con “def” keyword.  Los parámetros se pasan por referencia.  Sin embargo, los tipos inmutables (tuplas, enteros, cadenas, etc) no pueden ser cambiados.  Podemos especificar parámetros opcionales asignándoles un valor por defecto. # Soy un comentario def soy_una_funcion(lista, entero=2, cadena='por defecto'): lista.append(cadena)
  • 9. Python - Clases  Admite herencia múltiple. class MyClass: common = 10 def __init__(self): self.myvariable = 3 def myfunction(self, arg1, arg2): return self.myvariable # This is the class instantiation >>> classinstance = MyClass() >>> classinstance.myfunction(1, 2)
  • 10. Python - Excepciones def some_function(): try: # Division by zero raises an exception 10 / 0 except ZeroDivisionError: print "Oops, invalid." else: # Exception didn't occur, we're good. pass finally: # This is executed after the code block is run # and all exceptions have been handled, even # if a new exception is raised while handling. print "We're done with that."
  • 11. Python – Importar  Importar una biblioteca:  import libreria  Importar una función concreta:  from libreria import funcion
  • 12. ¿Qué necesitamos para trabajar?  Geany: un editor para Python.  Subversion: sistema de control de versiones.  Python ~2.6.2.  Elegir un buscador.
  • 13. Geany  IDE ligero o editor con las funciones básicas de un IDE.  Multiplataforma.  http://www.geany.org
  • 14. Empezamos  Instalamos Python  Ubuntu: sudo apt-get install python2.6  Windows: descargar de python.org la 2.6.4.  Alta en la forja de rediris.  Descargamos el proyecto:  svn checkout https://forja.rediris.es/svn/cusl4-visuse  Los módulos los tenemos en trunk/visuse/modulos  Añadimos la clase a classes.py  Escribimos el módulo en Modulo_Nombre.py
  • 15. Contenido del módulo  Obtenemos los datos del buscador (usando XML, JSON o lo que corresponda).  Creamos una instancia de la clase por cada resultado.  Creamos una lista de resultados.  Mostramos la lista en pantalla para comprobar que no hay problemas.
  • 16. Referencias  Python in 10 minutes.  Dive into Python.  Python para todos.
  • 17. Eso es todo  ¿Alguna pregunta? Imagen de Discoveryschool.com