New submission from Cherniavsky Beni <[email protected]>:
[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 <[email protected]>
<http://bugs.python.org/issue9618>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com