[issue9618] IDLE shell ignores all but first statement
Cherniavsky Beni
report at bugs.python.org
Mon Aug 16 00:52:10 CEST 2010
New submission from Cherniavsky Beni <cben at users.sf.net>:
[Spinoff of http://bugs.python.org/issue3559]
If you manage to type several simple statements into the prompt (by copy-pasting them, using Ctrl+J, or creative deletion), IDLE runs the first one and silently ignores the rest:
>>> x = 1
x = 2
>>> x
1
Moreover, it doesn't even parse the additional lines:
>>> x = 3
$@syntax error?!
>>> x
3
If the first statement is a compound statement, IDLE refuses with a SyntaxError at the begging of the second statement:
>>> def f():
return 42
f()
SyntaxError: invalid syntax
I believe in both cases the right least-surprise behavior is to run all statements.
If not, a clear error explaining that IDLE doesn't support multiple statements must be printed. But I can't see a reason to choose this over making it Just Work.
[Implementation: might or might not be related to http://bugs.python.org/issue7741]
----------
components: IDLE
messages: 114019
nosy: cben
priority: normal
severity: normal
status: open
title: IDLE shell ignores all but first statement
versions: Python 2.7, Python 3.2
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue9618>
_______________________________________
More information about the Python-bugs-list
mailing list