]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-145694: Update tutorial indentation guidance for PyREPL auto-indent (#145725)
authorMatt Van Horn <mvanhorn@users.noreply.github.com>
Sat, 11 Jul 2026 15:57:37 +0000 (08:57 -0700)
committerGitHub <noreply@github.com>
Sat, 11 Jul 2026 15:57:37 +0000 (16:57 +0100)
The tutorial stated users must manually type tabs/spaces at the interactive
prompt, which is no longer accurate since the PyREPL in Python 3.13+
auto-indents after compound statement headers. Updated to mention both
the default REPL behavior and the basic REPL fallback.

Doc/tutorial/introduction.rst

index 7778e37a9adaa9550b7753c40ce231931ee64d0f..465c32d0b72431cc446aae7edeb6b829c657b243 100644 (file)
@@ -532,10 +532,13 @@ This example introduces several new features.
   and ``!=`` (not equal to).
 
 * The *body* of the loop is *indented*: indentation is Python's way of grouping
-  statements.  At the interactive prompt, you have to type a tab or space(s) for
-  each indented line.  In practice you will prepare more complicated input
-  for Python with a text editor; all decent text editors have an auto-indent
-  facility.  When a compound statement is entered interactively, it must be
+  statements.  At the interactive prompt, the default REPL automatically
+  indents continuation lines after compound statement headers like ``if`` or
+  ``while``.  In the basic REPL (invoked with :envvar:`PYTHON_BASIC_REPL`)
+  or in older Python versions, you have to type a tab or space(s) for each
+  indented line manually.  In practice you will prepare more complicated
+  input for Python with a text editor; all decent text editors have an
+  auto-indent facility.  When a compound statement is entered interactively, it must be
   followed by a blank line to indicate completion (since the parser cannot
   guess when you have typed the last line).  Note that each line within a basic
   block must be indented by the same amount.