O'Reilly logo

Python: Essential Reference, Third Edition by David Beazley

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Assertions and __debug__

The assert statement can introduce debugging code into a program. The general form of assert is

assert test [, data]

where test is an expression that should evaluate to true or false. If test evaluates to false, assert raises an AssertionError exception with the optional data supplied to the assert statement. For example:

def write_data(file,data):
    assert file, "write_data: file is None!"
    ...

Assertions are not checked when Python runs in optimized mode (specified with the –O option).

In addition to assert, Python provides the built-in read-only variable __debug__, which is set to 1 unless the interpreter is running in optimized mode (specified with the -O option). Programs can examine this variable as needed—possibly ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required