diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2016-05-02 22:17:19 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2016-05-02 22:17:19 (GMT) |
commit | 7d03c8463477b0e314f594bb9988e49dc0945be9 (patch) | |
tree | 81a4625cfeabb45d48af2824b2f208cc081cbc2f /Doc | |
parent | 84050c543456c4fe33348c15c67d627ad58b6093 (diff) | |
download | cpython-7d03c8463477b0e314f594bb9988e49dc0945be9.zip cpython-7d03c8463477b0e314f594bb9988e49dc0945be9.tar.gz cpython-7d03c8463477b0e314f594bb9988e49dc0945be9.tar.bz2 |
Clarify IDLE-console differences with respect to the sys module.
The reload(sys) effect was the crux of a Stackoverflow question.
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/library/idle.rst | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Doc/library/idle.rst b/Doc/library/idle.rst index df08fe8..84805ff 100644 --- a/Doc/library/idle.rst +++ b/Doc/library/idle.rst @@ -550,14 +550,16 @@ IDLE-console differences As much as possible, the result of executing Python code with IDLE is the same as executing the same code in a console window. However, the different -interface and operation occasionally affects results. - -For instance, IDLE normally executes user code in a separate process from -the IDLE GUI itself. The IDLE versions of sys.stdin, .stdout, and .stderr in the -execution process get input from and send output to the GUI process, -which keeps control of the keyboard and screen. This is normally transparent, -but code that access these object will see different attribute values. -Also, functions that directly access the keyboard and screen will not work. +interface and operation occasionally affects visible results. For instance, +``sys.modules`` starts with more entries. + +IDLE also replaces ``sys.stdin``, ``sys.stdout``, and ``sys.stderr`` with +objects that get input from and send output to the Shell window. +When this window has the focus, it controls the keyboard and screen. +This is normally transparent, but functions that directly access the keyboard +and screen will not work. If ``sys`` is reset with ``reload(sys)``, +IDLE's changes are lost and things like ``input``, ``raw_input``, and +``print`` will not work correctly. With IDLE's Shell, one enters, edits, and recalls complete statements. Some consoles only work with a single physical line at a time. |