PDA

Ver la Versión Completa : Problema interprete python


gersojn
16-08-2011, 03:10:28
Buenas, estoy iniciandome en python, y estoy haciendo una sencilla aplicacion que imprime en pantalla un mensaje cada 2 segundos, el problema es que cuando compila, no me muestra nada en absoluto, el codigo, que utilizo es el siguiente:



#!/usr/bin/env python

import time

while 2:
time.sleep(2)
print"msj"



Trabajo en Mandriva2010 i586.

Que puede ser lo que esta mal, ya que me compila y no me da ningun error, el archivo, tiene permisos 777 ademas habia creado un .sh a partir del .py, pero de ninguna manera me muestra algo en terminal, simplemente se queda parpadeando.

De antemano, muchas gracias.

gersojn
16-08-2011, 06:47:00
Hola, le cuento, que el problema anterior lo tenia en mandriva2010, y tras varios intentos, instale ubuntu 11 y hice la misma prueba, y no me funciono, investige por la red, y tras un update al sistema, me corrio perfectamente, mostrandome los msj.

Despues, hice exactamente el mismo procedimiento para mandriva(con diferencia en algunos comandos, aunque la funcion es la misma hacer el update) tras hacer el update, intente correr la aplicacion y el mismo problema, no me muestra nada.

De momento trabare con ubuntu en una maquina virtual, si alguien tiene una idea de como solucionarlo en Mandriva2010 le agradeceria mucho su ayuda..

De antemano, gracias.

Lepe
16-08-2011, 08:57:46
el while solo está haciendo un sleep(2), tienes que darle un tabulador al "print" para que esté dentro del bucle y entonces si te saldrá.

Saludos

mamcx
16-08-2011, 19:18:33
Recuerda, en python la tabulacion CUENTA.

A diferencia de otros lenguajes donde se permite mezclar muchos estilos de ordenar (y desordenar el codigo) en python la tabulacion reemplaza los BEGIN..END, los ; y demas marcadores.

Asi que:


IF True THEN BEGIN
Adentro();
END
Afuera();


Se escribiria en python


if True:
Adentro()
Afuera()


Ademas, es raro que pongas el While con 2. Si quieres que sea infinito, pon while True:

Deberias darte una repasada a que hace un codigo "pitonico (http://chrisarndt.de/talks/rupy/2008/output/slides.html)". No hay nada mas confuso que programar un lenguaje como si fuera otro (con solo verlo, es claro que de python solo tienes la sintaxis).