diff options
author | Georg Brandl <georg@python.org> | 2007-09-18 07:24:40 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2007-09-18 07:24:40 (GMT) |
commit | 745e48dffa89418b547e0eed3c8697c72826a2a3 (patch) | |
tree | 3813f29665ea158a9b351e3be75a5e967db1f9d6 /Doc/reference | |
parent | 2b03d45bb9a26645dc06c9adfdeb5ec0b7509511 (diff) | |
download | cpython-745e48dffa89418b547e0eed3c8697c72826a2a3.zip cpython-745e48dffa89418b547e0eed3c8697c72826a2a3.tar.gz cpython-745e48dffa89418b547e0eed3c8697c72826a2a3.tar.bz2 |
A bit of reordering, also show more subheadings in the lang ref index.
Diffstat (limited to 'Doc/reference')
-rw-r--r-- | Doc/reference/index.rst | 2 | ||||
-rw-r--r-- | Doc/reference/simple_stmts.rst | 84 |
2 files changed, 43 insertions, 43 deletions
diff --git a/Doc/reference/index.rst b/Doc/reference/index.rst index 18bf053..a179d21 100644 --- a/Doc/reference/index.rst +++ b/Doc/reference/index.rst @@ -17,7 +17,7 @@ write a Python extension module, and the :ref:`c-api-index` describes the interfaces available to C/C++ programmers in detail. .. toctree:: - :maxdepth: 2 + :maxdepth: 3 introduction.rst lexical_analysis.rst diff --git a/Doc/reference/simple_stmts.rst b/Doc/reference/simple_stmts.rst index 7b55534..69bcd9d 100644 --- a/Doc/reference/simple_stmts.rst +++ b/Doc/reference/simple_stmts.rst @@ -66,48 +66,6 @@ statements yielding ``None`` are not written, so that procedure calls do not cause any output.) -.. _assert: - -Assert statements -================= - -.. index:: - statement: assert - pair: debugging; assertions - -Assert statements are a convenient way to insert debugging assertions into a -program: - -.. productionlist:: - assert_stmt: "assert" `expression` ["," `expression`] - -The simple form, ``assert expression``, is equivalent to :: - - if __debug__: - if not expression: raise AssertionError - -The extended form, ``assert expression1, expression2``, is equivalent to :: - - if __debug__: - if not expression1: raise AssertionError, expression2 - -.. index:: - single: __debug__ - exception: AssertionError - -These equivalences assume that ``__debug__`` and :exc:`AssertionError` refer to -the built-in variables with those names. In the current implementation, the -built-in variable ``__debug__`` is ``True`` under normal circumstances, -``False`` when optimization is requested (command line option -O). The current -code generator emits no code for an assert statement when optimization is -requested at compile time. Note that it is unnecessary to include the source -code for the expression that failed in the error message; it will be displayed -as part of the stack trace. - -Assignments to ``__debug__`` are illegal. The value for the built-in variable -is determined when the interpreter starts. - - .. _assignment: Assignment statements @@ -308,6 +266,48 @@ instance variable. For example:: a.x += 1 # writes a.x as 4 leaving A.x as 3 +.. _assert: + +The :keyword:`assert` statement +=============================== + +.. index:: + statement: assert + pair: debugging; assertions + +Assert statements are a convenient way to insert debugging assertions into a +program: + +.. productionlist:: + assert_stmt: "assert" `expression` ["," `expression`] + +The simple form, ``assert expression``, is equivalent to :: + + if __debug__: + if not expression: raise AssertionError + +The extended form, ``assert expression1, expression2``, is equivalent to :: + + if __debug__: + if not expression1: raise AssertionError, expression2 + +.. index:: + single: __debug__ + exception: AssertionError + +These equivalences assume that ``__debug__`` and :exc:`AssertionError` refer to +the built-in variables with those names. In the current implementation, the +built-in variable ``__debug__`` is ``True`` under normal circumstances, +``False`` when optimization is requested (command line option -O). The current +code generator emits no code for an assert statement when optimization is +requested at compile time. Note that it is unnecessary to include the source +code for the expression that failed in the error message; it will be displayed +as part of the stack trace. + +Assignments to ``__debug__`` are illegal. The value for the built-in variable +is determined when the interpreter starts. + + .. _pass: The :keyword:`pass` statement |