PyLadies - Introducción a Python

Embed Size (px)

Citation preview

  • 24 MAY 2014

    1 WorkShop PyLadies

  • Qu es Python ?

  • Conceptos Bsicos Lenguaje de programacin: Es un lenguaje informtico, diseado para expresar rdenes e instrucciones precisas, que deben ser llevadas a cabo por una computadora. El mismo puede utilizarse para crear programas que controlen el comportamiento >sico o lgico de un ordenador. Est compuesto por una serie de smbolos, reglas sintcticas y semnticas que de>inen la estructura del lenguaje. Lenguajes de alto nivel: son aquellos cuya caracterstica principal, consiste en una estructura sintctica y semntica legible, acorde a las capacidades cognitivas humanas. A diferencia de los lenguajes de bajo nivel, son independientes de la arquitectura del hardware, motivo por el cual, asumen mayor portabilidad.

  • Conceptos Bsicos Lenguajes interpretados: A diferencia de los compilados, no requieren de un compilador para ser ejecutados sino de un intrprete. Un intrprete, acta de manera casi idntica a un compilador, con la salvedad de que ejecuta el programa directamente, sin necesidad de generar previamente un ejecutable. Ejemplo de lenguajes de programacin interpretado son Python, PHP, Ruby, Lisp, entre otros. Tipado dinmico: un lenguaje de tipado dinmico es aquel cuyas variables, no requieren ser de>inidas asignando su tipo de datos, sino que ste, se auto-asigna en tiempo de ejecucin, segn el valor declarado.

  • Conceptos Bsicos Multiplataforma: Signi>ica que puede ser interpretado en diversos Sistemas Operativos como GNU/Linux, Windows, Mac OS, Solaris, entre otros. Multiparadigma: Acepta diferentes paradigmas (tcnicas) de programacin, tales como la orientacin a objetos, aspectos, la programacin imperativa y funcional.

  • Algunas Definiciones Python es un lenguaje de programacin multipropsito, multiplataforma, amable, fcil de aprender y de cdigo abierto. Python es un lenguaje de programacin de alto nivel, fcil de aprender y de uso profesional con una sintaxis legible y ordenada Python es un lenguaje de programacin interpretado de propsito general de alto nivel. Python es un lenguaje interpretado, de alto nivel, multiplataforma, de tipado dinmico y multiparadigma.

  • Algo de Historia y Filosofa

  • A fines de los 80s Proyecto de Cdigo Abierto

    Dictador Benevolente

    Python 3.4.0

  • Filosofa - Zend de Python Bello es mejor que feo.

    Explcito es mejor que implcito.

    Simple es mejor que complejo.

    Complejo es mejor que complicado.

    Plano es mejor que anidado.

    Disperso es mejor que denso.

    La legibilidad cuenta.

    Los casos especiales no son tan especiales como para quebrantar las reglas.

    Aunque lo prctico gana a la pureza.

    Los errores nunca deberan dejarse pasar silenciosamente.

    A menos que hayan sido silenciados explcitamente

    Frente a la ambigedad, rechaza la tentacin de adivinar.

    Debera haber una -y preferiblemente slo una- manera obvia de hacerlo.

    Aunque esa manera puede no ser obvia al principio a menos que usted sea holands.15

    Ahora es mejor que nunca.

    Aunque nunca es a menudo mejor que ya mismo.

    Si la implementacin es difcil de explicar, es una mala idea.

    Si la implementacin es fcil de explicar, puede que sea una buena idea.

    Los espacios de nombres (namespaces) son una gran idea Hagamos ms de esas cosas!

  • Quienes lo usan?

  • Ellos lo usan!

  • Caractersticas Principales de Python

  • Caractersticas Principales

    Dado que el cdigo se compila automticamente y es ejecutado, Python es adecuado para su uso como lenguaje de implementacin de aplicaciones web, o programacin matemtica, etc. Tipos de datos incorporados: cadenas, listas, diccionarios, etc. Python proporciona una forma consistente para utilizar objetos: todo es un objeto. Y en Python es fcil de poner en prctica nuevos tipos de objetos (llamados clases).

  • Carctersticas Principales Debido a sus buenas construcciones de estructura (bloques de cdigo anidados, funciones, clases, mdulos y paquetes) y su uso consistente de los objetos y la programacin orientada a objetos, Python nos permite escribir, aplicaciones lgicas claras para tareas pequeas y grandes. Las estructuras de control habituales: if, if-else, if-elif-else, while, adems del potente iterador (for). Extensiones en C y C++. Mdulos de extensin usando herramientas como Swig.

  • Primeros Paso Despus de haber instalado Python, puedes vericar tu instalacin, escribiendo en el terminal, la palabra python. Si todo sale bien, vers algo parecido a esto

    %Python Python 2.7.5+ ( default , May 23 2014, 19:49:51) [GCC 4 .8 .1] on linux2 Type "help " , " copyright " , " license " fo r more nformation . >>> prin t "Python" Python

  • Primeros Pasos Si se desea ejecutar varias lneas de cdigo sin tener que tipear una tras otra en la consola interactiva,se guarda el cdigo en un archivo de texto que termine en .py y se ejecuta utilizando el comando python.

  • Convenciones

  • PEP- Python Enhancement Proposals (PEP) Python utiliza indentacin para mostrar la estructura de bloque. Indentacin en el primer nivel muestra el inicio de un bloque. La prxima indentacin fuera de la anterior muestra el nal de un bloque. Por ejemplo:

    i f x : i f y :

    f1 ( ) f2 ( ) Y, la convencin es usar cuatro espacios para cada nivel de indentacin. En realidad, es ms que una convencin, es prcticamente un requisito.

  • PEP- Python Enhancement Proposals (PEP)

    Todos los cambios propuestos en Python, son detallados en documentos pblicos llamados Python Enhancement Proposals (PEP). Lo anterior de los espacios en blanco se encuentra en el PEP-8.

  • Primeros Pasos Si se desea ejecutar varias lneas de cdigo sin tener que tipear una tras otra en la consola interactiva,se guarda el cdigo en un archivo de texto que termine en .py y se ejecuta utilizando el comando python.

  • Ejecucin?

  • Ejecutar Archivos .py Podemos ver nuestras aplicaciones como un conjunto de archivos fuente de Python, que son archivos de texto normales. Script Es un archivo que podemos ejecutar directamente. Mdulo Es un archivo que podemos importar para proporcionar funcionalidad a otros archivos o sesiones interactivas. Los archivos fuente de Python, por lo general tienen extensin .py. Python guarda el archivo bytecode compilado para cada mdulo que importamos. Python reconstruye cada archivo bytecode siempre que sea necesario.

  • Ejecutar Archivos .py (Por ahora) Podemos poner algo de cdigo en un archivo hello.py, como esto:

    print "Hola a todos" y ejecutarlo de la siguiente forma

    % python hello . py

  • Ejemplos Bsicos para entender las sintaxis

  • Ejemplos Bsico I

    ###Programa que imprima los 25 primeros nmeros naturales n = 1 while n

  • Ejemplo Bsico II

    ### Introducir un nuumero por teclado y decir si es par o impar h = input('Introduzca un numero: ') if h%2 == 0: print 'Este numero es par' else: print 'Este numero es impar'

  • Ejemplo Bsico III Cdigo Presupuesto - Ejemplo entregado.

  • Frameworks en Python

  • Frameworks

  • Revisar!

  • Enlaces Adicionales y Referencias http://www.cursosdeprogramacionadistancia.com/static/pdf/material-sin-personalizar-python.pdf https://github.com/python-uni/Tutoriales http://python.org.ar/Recursos https://www.python.org/

  • Manos a la Obra con Django :)