[pyar] Hay alguna manera mas facil de hacer esto en py3?

Roberto Alsina ralsina en netmanagers.com.ar
Dom Feb 10 10:44:29 ART 2013


On 10/02/13 10:32, Roberto Alsina wrote:
> Estoy tratando de hacer algo que en python2 es fácil, de manera que ande
> en python 2 y 3.
>
> El original:
>
> foo = raw_input("foo? ")
>
> En python 3 eso es:
>
> foo = input("foo? ")
>
> Obviamente no puedo usar input en python 2! Así que digo, lo hago un
> poco mas a mano. Suponiendo que tengo print_function en python2, puedo
> hacer esto:
>
> print("foo? ", end="")
> foo=sys.stdin.read()
>
> Y funciona bárbaro. Pero en python3 no se ve el "foo?" porque no flushea
> stdin.
> Entonces, en python 3.3 tengo el parametro opcional flush=True, pero
> quiero que
> ande en python 3.2 que es lo que hay en Ubuntu.
>
> Entonces, en este momento estoy haciendo esto:
>
> print("foo? ", end="")
> sys.stdin.flush()
> foo=sys.stdin.read()
>
> Que es horroroso. Ideas?

Por las dudas, tambien me parece horrendo:

if sys.version_info[0] == 3:
    raw_input = input

:-)



More information about the pyar mailing list