Sei sulla pagina 1di 14

INTRODUCCION A PYTHON (parte 1) EJECUTANDO Como vimos en la parte 0, ejecutar el mas simple script o programa en todo lenguaje, es imprimir

como salida la cadena de texto HOLA MUNDO o HELLO WORLD, en la parte anterior hicimos un script que ejecutaba dicha accion, vimos que si lo corremos desde la interfase de python apretando el boton RUN

En la consola interactiva nos mostrara la salida del programa que esta guardado en el script, o sea la cadena HOLA MUNDO o HELLO WORLD. Recordemos siempre que si hacemos cambios en el script, antes de correrlo debemos guardarlos y alli se ve.

Ahora si el mismo script lo ejecutamos haciendo doble click en el mismo, estando cerrado el interprete de python, nos mostrara la salida en una ventana de comandos, si estamos en windows, dicha ventana no dara tiempo a ver nada y se cerarra como ocurre con todos los programas que tienen salida por consola, hasta que hagamos programas con otro tipo de salida es bueno saber este truquito.

Ya explicaremos bien comando por comando, pero bueno input es un comando que queda esperando que el usuario aprete una tecla y si apreta ENTER terminara y se cerrara el programa y quedara visible hasta que apretemos dicha tecla.

Y cuando apretamos ENTER podemos salir, este truquito mientras hagamos scripts que tenga salida por ventana de comandos siempre lo agregaremos al final, para que no se cierre solo, y podamos ver los scripts solo ejecutandolos con doble click. Por supuesto que este simple script es una de las tantas formas que podemos imprimir HOLA MUNDO, ya vimos que si abrimos una consola de windows y escribimos python.

Microsoft Windows XP [Versin 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\Documents and Settings\Ricardo.NARVAJA-D6A3908>python ActivePython 2.4.3 Build 12 (ActiveState Software Inc.) based on Python 2.4.3 (#69, Apr 11 2006, 15:32:42) [MSC v.1310 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> y alli tipeamos print 'Hola Mundo'

Tendremos la salida similar, lo mismo que si abrimos la ventana interactiva de python

y escribimos la instruccin y apretamos ENTER tambien obtenemos la misma salida o sea que tenemos diversas formas de lograr el mismo objetivo. 1) ejecutando la instruccin en la consola de windows o terminal en linux o mac luego de tipear python. 2) tipeando la instruccin en la ventana interactiva de python 3) haciendo un script y corriendolo con doble click o con el RUN desde python. Vemos que la opcion 1 y la 2 son para ejecutar unas cuantas instrucciones y para experimentar que resultado se produce al ejecutarlas, pero para programas largos o scripts complejos, no podemos tipear cada vez lo mismo, por lo cual en esos casos se aconseja la opcion 3 que es de guardar el codigo en un script, el cual no necesita ser retipeado y puede ejecutarse, copiarse, editarse, mejorarse, la cantidad de veces que uno quiera. De cualquier manera segn lo que uno necesite hacer, python permite en forma flexible, elegir entre las diferentes opciones, lo cual es muy util, por ejemplo, en el aprendizaje de las instrucciones de python es muy util la ventana interactiva para poder ver y practicar con pocos comandos en forma

inmediata,y ver que resultados producen. Bueno abramos el primer script que realizamos ahora le agregaremos -----------------------------------------------------------------------------------------------------------------------hello = "Hello, World!" print hello print 2 * 100 input( "Presione ENTER para terminar" )

Guardamos los cambios y lo ejecutamos con doble click

Bueno ahi tenemos el primer print imprime una string que esta entre comillas , HELLO WORLD, el segundo print imprime el resultado de 2 por 100 y luego tenemos la salida de la ventana apretando ENTER. Por ahora no nos preocupamos mucho de la sintaxis, mas adelante se explicara comando por comando, por ahora estamos ejecutando scripts en forma bastante intuitiva. Realmente un script no necesitamos crearlo en python, en cualquier editor de texto, como el notepad, si escribimos el mismo texto y lo guardamos con extension .py o con extension .txt y luego se la cambiamos, sera exactamente lo mismo. Si le agregamos un * mas sera como elevar 2 a la 100 hello = "Hello, World!" print hello print 2 ** 100 input( "Presione ENTER para terminar" ) al ejecutarlo se vera el resultado de la operacin

Otro truco parecido para evitar que se cierren las consolas de comandos es usando el comando raw_input, que es bastante similar a lo que pusimos anteriormente pero menos aparatoso. Si al final del script agrego raw_input () veamos que ocurre, alli en mi primer script le cambie por raw_input() el comando para evitar que se cierre la ventana, guardemos los cambios y ejecutemoslo.

Si lo ejecuto

es menos invasivo y al apretar enter tambien sale, recomiendan este y bueno cada uno aplica el que mas le guste, mas adelante detallaremos la diferencia entre ambos. Realmente cuando uno ejecuta un script de python, el interprete lo compila en una fila de extension .pyc que es el codigo de python compilado, y para mayor velocidad mientras no se cambie el codigo cada vez que se ejecuta un script, se ejecuta dicho pyc para mayor rapidez.

Igual esto no necesita saberse pues siempre uno ejecuta el .py, este o no este el .pyc es un tema de funcionamiento interno, pero bueno a modo ilustrativo es bueno saberlo. Esos pyc son ejecutados por la llamada PYTHON VIRTUAL MACHINE que es realmente un loop que lee byte a byte y segn cual es ejecuta la siguiente instruccin.

Asimismo los usuarios de C veran que aqu no existe make ni es necesario compilar el codigo fuente, el mismo se compila y ejecuta automaticamente, por lo cual es mas sencillo, aunque un poco mas lento al ejecutar, pero con los avances de hardware de hoy dia, realmente no se nota gran diferencia. Tambien existen formas de crear exes, que pueden correr en maquinas que no tienen python instalados, por ejemplo en WINDOWS, existe un programa llamado Py2exe que genera exes que corren en cualquier windows, tengan o no tengan python instalado, por supuesto el hecho de llevar las dll de python dentro del mismo exe, supone un incremento de tamao, piensen si en cada

ejecutable .NET pusieramos las dll que necesita dentro del mismo exe, para evitar que el usuario instale el runtime necesario, habria exes de NET de 60 megas jeje, que ejecutan 2 o 3 instrucciones, por lo tanto lo logico es que si alguien corre programas escritos en python, tenga instalado python en su maquina, mejor que meter todo en exes, agrandando las cosas. Bueno volvamos a nuestra ventana interactiva para tipear algunos comandos en forma intuitiva que explicaremos mas en profundidad en siguientes partes. Esto pueden tipearlo tanto en la ventana interactiva de pyton como en una consola de comandos o terminal luego de tipear python es similar. Por mejor claridad lo tipeare en la ventana interactiva de python.

Practicamos ejecutando prints, primero el clasico 'Hola Mundo' y luego una operacin que se resuelve y me muestra el resultado. Si asigno algun valor a una variable, puedo ver el valor asignado a la misma solo tipeando el nombre de ella.

Alli asigne a pepe el valor 87655 que quedo almacenado, no lo muestra pues fue una asignacion solamente, si tipeo el nombre de la variable me mostrara el valor asignado.

Vemos que al tipear pepe, la ventana interactiva nos mostro el valor asignado, de cualquier manera esto no debe confundirnos, es solo una opcion para visualizar en la ventana interactiva de python, si queremos que un programa muestre en la salida un resultado deberemos usar print, si no no se mostrara. Tambien vimos que python puede concatenar strings facilmente si tipeamos print 'PEPE' + ' ES'+ ' UN' + ' GENIO' ##concatenar

lo que se halla luego de ## es un comentario que no se ejecuta y sirve para saber en un programa que se esta haciendo, si tipeo esto y lo ejecuto.

Vemos que se concatenan las strings y que el comentario por supuesto no se ejecuta, es muy practico dentro de un script complejo, poner comentarios para ayudar a la comprension del codigo. Ahora escribimos un script con estas lineas

Lo guardo con el nombre spam.py y al darle doble click

tambien si en una consola de comandos, me ubico en el path donde esta el archivo

C:\Documents and Settings\Ricardo.NARVAJA-D6A3908>cd Escritorio C:\Documents and Settings\Ricardo.NARVAJA-D6A3908\Escritorio> y luego escribo python y el nombre del archivo a ejecutar lo correra.

Es bueno poder ejecutar un script desde una linea de comandos, eso nos permite por ejemplo desviar la salida del script a un archvo de texto facilmente. Si tipeo en la linea de comandos python spam.py > pepe.txt guardara la salida del archivo a un archivo de texto llamado pepe.

Si abro el pepe.txt

Vemos que direcciono la salida al archivo de texto y no se mostro en la ventana de comandos jeje. Asi vamos practicando y divirtiendonos con ejemplos simples, que son faciles de entender antes de hacer un resumen mas detallado de las instrucciones en la parte siguiente.

Escribo import sys que me importara el modulo sys, y en la linea siguiente tipeo print sys.

Vemos que al apretar sys y el punto sale una ventana para elegir las distintas opciones que tiene el modulo sys en este caso elegimos platform con TAB lo ingresamos y luego ENTER.

Alli vemos como importamos una funcion que pertenece al modulo sys, que nos devuelve la plataforma donde estamos corriendo nuestro script, la posibilidad de importar modulos hechos y de hacer mas, nosotros mismos, o bajar de internet nos da muchas posibilidades. Tambien hay scripts en python que no muestran la consola de windows, y tienen la extension .pyw, en ese caso son scripts que tienen su propia salida y la consola de windows molesta, de forma que al guardarlo como .pyw, no se mostrara. IMPORTANDO MODULOS La definicion de modulo en python es simple, cualquier archivo que esta hecho en python, y tiene extension .py es un MODULO. Cualquier otro archivo de python puede acceder a las posibilidades de un modulo, importandolo y usandolo. Generalmente largos programas escritos en python tienen la forma de multiples modulos, los cuales

importan herramientas de otros modulos. Ya hemos visto como ejemplo la importacion del modulo sys, y hay muchisimos mas que podriamos poner como ejemplos. Si hacemos un script con ello import sys print sys.platform print 2 ** 100 y lo guardamos con el nombre Script4.py

si lo ejecuto desde la linea de comandos

alli esta la salida que nos muestra que estamos en win32. Si alli entro en python y tipeo import Script4

la primera vez lo ejecutara, sucesivas veces tendre que usar el comando reload reload (Script4)

lo ejecutara nuevamente al modulo que tiene cargado. Importar realment sirve para ejecutar modulos ajenos en el nuestro asi como usar las herramientas

que este tenga programadas internamente. Vayamos a la ventana interactiva

alli importo el modulo

vemos que al escribir print Script4. Aparece las posibles tools y variables que tiene incluidas el modulo Script4, como aun no define propias, usa la que importo de sys, pero como eso no lo asigna a ninguna variable no nos mostrara nada

Esto te dice que el modulo esta alli pero no muestra nada porque no se asigna a ninguna variable, si editamos Script4 y cambiamos para que asigne a la variable llamada a el valor de la string de que

sistema estamos corriendo y guardamos los cambios y ahora si importamos el modulo.

Como cerre y abri la ventana interactiva no lo encuentra ya veremos que hay una carpeta especial conde se colocan los modulos de python para que los busque alli, pero si lo abro y lo guardo ya lo localiza nuevamente.

Alli importo el modulo ahora no se ve en que sistema operativo estamos trabajando porque eso esta en la variable a dentro de Script4, si hacemos...

ahora no solo nos aparece sys como opcion si no tambien la variable a que creamos, la elegimos con TAB.

Y al apretar enter ahi si nos muestra que estamos en WIN32, vimos como usar una funcion del modulo sys, como asignarlo a una variable a dentro del modulo Script4, y luego como podemos llamar a la variable Script4.a que nos devuelve el valor solicitado, usando el trabajo entre modulos. Bueno por hoy hay bastante para practicar esto es solo un pequeo pantallazo para que se vayan familiarizando con el idioma, ya iremos detallando mas adelante. Un abrazo hasta la parte 2 Ricardo Narvaja

Potrebbero piacerti anche