Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #61722

Re: input() on python 2.7.5 vs 3.3.2

References <2ba69b81-99f9-40d6-a337-afb2f892ecff@googlegroups.com>
Date 2013-12-13 01:53 +1100
Subject Re: input() on python 2.7.5 vs 3.3.2
From Chris Angelico <rosuav@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.3996.1386860018.18130.python-list@python.org> (permalink)

Show all headers | View raw


On Fri, Dec 13, 2013 at 1:45 AM,  <stephen.boulet@gmail.com> wrote:
> Can someone explain? Thanks.
>
> Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:06:53) [MSC v.1600 64 bit (AMD64)] on win32
> Type "help", "copyright", "credits" or "license" for more information.
>>>> x = input()
> Hello there
>>>> print(x)
> Hello there
>
> Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win32
> Type "help", "copyright", "credits" or "license" for more information.
>>>> x = input()
> Hello there
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "<string>", line 1
>     Hello there
>               ^
> SyntaxError: unexpected EOF while parsing

It's very simple: The input() function in Python 2.x is a very
dangerous one - it's equivalent to eval(input()) in Python 3. The
equivalent function in Python 2 is called raw_input. For safety and
compatibility, just do this at the beginning of your interactive
session or the top of your script:

input = raw_input

or, in a way that'll work in Python 3 as well, with no changes:

try:
    input = raw_input
except NameError:
    pass

After that, you can safely call input() and get back a string.

ChrisA

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

input() on python 2.7.5 vs 3.3.2 stephen.boulet@gmail.com - 2013-12-12 06:45 -0800
  Re: input() on python 2.7.5 vs 3.3.2 Chris Angelico <rosuav@gmail.com> - 2013-12-13 01:53 +1100
  Re: input() on python 2.7.5 vs 3.3.2 Amit Saha <amitsaha.in@gmail.com> - 2013-12-13 00:56 +1000
  Re: input() on python 2.7.5 vs 3.3.2 Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-12 15:04 +0000
  Re: input() on python 2.7.5 vs 3.3.2 Chris Angelico <rosuav@gmail.com> - 2013-12-13 02:17 +1100

csiph-web