0% encontró este documento útil (0 votos)
353 vistas33 páginas

Phyton

Python es un lenguaje de programación interpretado, orientado a objetos y de tipado dinámico creado por Guido van Rossum a principios de los años 90. Es un lenguaje simple, potente y multiplataforma con una gran cantidad de librerías disponibles. Se puede usar para crear aplicaciones web sencillas usando frameworks como Juno, el cual permite crear páginas dinámicas accediendo a bases de datos relacionales como SQLite.

Cargado por

Aprender Libre
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
353 vistas33 páginas

Phyton

Python es un lenguaje de programación interpretado, orientado a objetos y de tipado dinámico creado por Guido van Rossum a principios de los años 90. Es un lenguaje simple, potente y multiplataforma con una gran cantidad de librerías disponibles. Se puede usar para crear aplicaciones web sencillas usando frameworks como Juno, el cual permite crear páginas dinámicas accediendo a bases de datos relacionales como SQLite.

Cargado por

Aprender Libre
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 33

Python

Massimiliano Perisi DNI: AK1166963

Python : lenguaje de programacin


Creado por Guido van Rossum a principios de los aos 90. Su nombre est inspirado en el grupo de cmicos ingleses Monty Python. Lenguaje similar a Perl, pero con una sintaxis muy limpia y que favorece un cdigo legible. Se trata de un lenguaje interpretado o de script, con tipado dinmico, fuertemente tipado, multiplataforma y orientado a objetos.

Porque elegir Python


Python es un lenguaje que todo el mundo debera conocer. Su sintaxis simple, clara y sencilla; el tipado dinmico, el gestor de memoria, la gran cantidad de libreras disponibles y la potencia del lenguaje, entre otros, hacen que desarrollar una aplicacin en Python sea sencillo, muy rpido y, lo que es ms importante, divertido. La sintaxis de Python es tan sencilla y cercana al lenguaje natural que los programas elaborados en Python parecen pseudocdigo. Por este motivo se trata adems de uno de los mejores lenguajes para comenzar a programar.

Casos de xito

Instalacin
Existen varias implementaciones distintas de Python: CPython, Jython, IronPython, PyPy, etc. CPython es la ms utilizada, la ms rpida y la ms madura. Instalar Python es muy sencillo. Es disponible en la mayora de distribuciones Gnu/Linux. Si no lo teneis, podeis descargar la versin correspondiente al vuestro sistema operativo desde la web de Python, en: http://www.python.org/download/. http://www.python.org/download/

Descargar en: http://www.python.org/download

Existen dos formas de ejecutar cdigo Python. Podemos escribir lneas de cdigo en el intrprete y obtener una respuesta del intrprete para cada lnea (sesin interactiva) o bien podemos escribir el cdigo de un programa en un archivo de texto y ejecutarlo.

Primer Programa
Abrir

Python

Donde

podemos escribir el primero programa

Primer programa
Escribimos: print "hola mundo" raw_input()

Guardais en un fichero como hola.py y despus veis lo que hace. raw_input() permite ver el texto, porque espera la entrada de datos por parte del usuario antes de quitar el programa.

Tipos de Datos
Nmeros:

entero, flotante, complejo. Ejemplo: (3 | 4,57 | 4 + 3j) Cadenas de texto. Ejemplo: Hola Valores Booleanos. Ejemplo: True - False
Para

saber el tipo de dato que contiene una variable se hace: type(id_variable)

EJEMPLO
Escribs

una variable de tipo entero y una cadena:

a = 35 c = Hola
Como

veis en Python, a diferencia de muchos otros lenguajes, no se declara el tipo de la variable al crearla. Al utilizarlas se declaran automticamente.
EJEMPLO: >>> a,b= 4,9 >>> a

Sintaxis

Se distinguen Maysculas minsculas No se necesita ninn carcter para indicar el fin de una sentencia. Los bloques son especificados por indentacin # Esta lnea es un comentario Var = 3 #Asignacin con el carcter = Var == Var1 #Operador igualdad Var -= #Para incrementar Var +=1

Listas
Puede

contener cualquier tipo de dato: EJEMPLO: poneis: lista = [35, Hola, True, [1,2,3]] Si quereis acceder a un elemento podeis poner: lista[indice] EJEMPLO: lista[4][1] #accede al elemento 1 Admite tambin numeros negativos: EJEMPLO: lista[-2] #devolveria True Lista [inicio:fin] EJEMPLO: lista[1:] #desde 1 hasta fin lista[:2] #desde inicio a 2

Tuplas y cadenas. Ejemplos


Las tuplas son inmutables y consumen menos memoria. Se declaran as: tupla = {1,Hola, True} Para acceder a un elemento: tupla[indice]

EJEMPLO:

cadena = Hola Gente! cadena[3] #devuelve: l cadena[:3] #devuelve: Hol

Estructuras de Control
if

Estructura ms simple: if (condizione): istruzione1

if-else

If (condizione1): istruzione1 else: istruzione2

a=input("dime un numero") if a>10: print "el numero elegido es mayor de 10" else: print "el numero elegido es minor o igual a 10" numero=input("dime un numero") if numero < 0: print Negativo elif numero > 0: print Positivo else: print Cero

EJEMPLO 1:

EJEMPLO 2:

Bucles - while
SINTAXIS while condicion: cuerpo del bucle, que se repetir mientras la condicin sea cierta.
EJEMPLO: while True: entrada = raw_input("> ") if entrada == "adios": break #(La palabra clave break (romper) sale del bucle en el que estamos) else: print entrada

Bucles - for
SINTAXIS for variable in lista (o cadena) : cuerpo del bucle EJEMPLO 1 secuencia = ["uno", "dos", "tres"] for elemento in secuencia: print elemento EJEMPLO 2 for i in range(20): print "Hola",

La funcin range()
La

funcin range() crea una lista de nmeros enteros en sucesin aritmtica funcin range con un nico argumento se escribe range(n) y crea una lista creciente de n trminos enteros que empieza en 0 y acaba antes de llegar a n.

La

>>>range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

La funcin len()
La

funcin len() devuelve la longitud de una lista o de una cadena de carcteres. El argumento de la funcin len() es la lista o cadena que queremos "medir". El valor devuelto por la funcin len() se puede usar como parmetro de la funcin range().
>>>len('mensaje secreto') 15 >>>len(['a','b','c']) 3 >>>range(len('mensaje secreto')) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

Funciones
En Python las funciones se declaran de la siguiente forma: def mi_funcion(param1, param2): """Esta funcion imprime los dos valores pasados como parametros""" print param1 print param2
La

cadena de texto en la primera lnea del cuerpo de la funcin se conoce con el nombre de docstring (cadena de documentacin) y sirve, como su nombre indica, a modo de documentacin de la funcin.

Para

llamar a la funcin (ejecutar su cdigo) se escribira:

mi_funcion("hola", 2)
Es

decir, el nombre de la funcin seguido de los valores que queramos pasar como parmetros entre parntesis. Se puede poner tambin: mi_funcion(param2 = 2, param1 = "hola")

El nmero de valores que se pasan como parmetro al llamar a la funcin tiene que coincidir con el nmero de parmetros que la funcin acepta segn la declaracin de la funcin.

EJEMPLOS
FUNCION

FACTORIAL def factorial(x): if x == 0: return 1 else: return x * factorial(x 1) function_retorna_suma(*elementos) : """Retorna la suma de los elementos pasados por parametro""" valor = 0 for i in elementos : valor = valor + i return valor

def

Python y el Web
Python

es un lenguaje muy til tambin porque, a travs de algunos miniframework, nos va a permitir hacer pequeas aplicaciones web de forma simple y rpida. Los frameworks nos permiten agilizar el desarrollo. Llamamos mini frameworks los que dan funcionalidad recortada a cambio de simplicidad y claridad. Voy a hablar de un miniframework web creado en Python que se llama JUNO

Juno - Instalacin
La

instalacin es muy simple:

$ easy_install SQLAlchemy $ easy_install jinja2 $ easy_install juno


easy_install

es una de las formas que tiene python para instalar libreras de terceros instalar easy_install basta con ir a su web (http://pypi.python.org/pypi/setuptools). linux apt-get install python-setuptools.

Para En

Pagina Web
Pongamos

que queremos saludos personalizados

@route('/:nombre/') def hola(web, nombre): return 'Hola, %s' % nombre run()


Podemos apuntarlo a: http://127.0.0.1:8000/
Para

realizar una pagina ms bonita, podemos poner tambin html, css, javascript. se Hace?

Como

Creamos

una carpeta que llamamos templates y escribimos el codigo que nos gusta:

Utilizar html en Python


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>juno</title> </head> <body> <h1> Hola, {{nombre}} </h1> </body> </html>

este nuevo codigo en el fichero.py:

from juno import * @route('/:nombre/') def hola(web, nombre): template('index.html', nombre=nombre) run()
Ahora

faltan solo las bases de datos donde almanecar los datos de la aplicacin. que queremos almacenar todas las personas que saludan:

Supongamos

Python e la Base de Datos


init({'db_location':

'amigos.db'}) #usamos sqlite, el fichero ser amigos.db #tambin podramos usar mysql o postgres
= model('Amigos', nombre='string')

Amigos

#esto definir una tabla llamadas Amigos con una columna llamada nombre. hay que ir a la base de datos a crear las tablas...Python las crea por ti!

No

Codigo aplicacin
@route('/:nombre/') def hola(web, nombre): #salvamos el nuevo amigo Amigos(nombre=nombre).save() # similar a un insert ... amigos = find(Amigos).all() # similar a un select * from Amigos template('index.html', nombre=nombre, amigos=amigos)

Codigo template
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01// EN"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>juno</title> </head> <body> <h1> Hola, {{nombre}} </h1> <h2>Otras personas que han visitado la web:</h2> <ul> {% for amigo in amigos %} <li>{{amigo.nombre}}</li> {% endfor %} </ul> </body> </html>

Final - Ms informacines
http://wiki.python.org/moin/WebProgramming

Aqui podeis buscar muchas informacines sobre Python y su aplicacines


http://web.ontuts.com/tutoriales/mini-

aplicaciones-web-con-python-y-junoparte-ii/ Y aqui una aplicacin ms complicada donde se pueda ver en un caso real como funciona Juno.

También podría gustarte