Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > e1011ddec34cda34f3a002b121247943 > files > 766

python-docs-2.7.17-1.1.mga7.noarch.rpm


<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta charset="utf-8" />
    <title>6. Built-in Exceptions &#8212; Python 2.7.17 documentation</title>
    <link rel="stylesheet" href="../_static/classic.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    
    <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <script type="text/javascript" src="../_static/language_data.js"></script>
    
    <script type="text/javascript" src="../_static/sidebar.js"></script>
    
    <link rel="search" type="application/opensearchdescription+xml"
          title="Search within Python 2.7.17 documentation"
          href="../_static/opensearch.xml"/>
    <link rel="author" title="About these documents" href="../about.html" />
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="copyright" title="Copyright" href="../copyright.html" />
    <link rel="next" title="7. String Services" href="strings.html" />
    <link rel="prev" title="5. Built-in Types" href="stdtypes.html" />
    <link rel="shortcut icon" type="image/png" href="../_static/py.png" />
    <link rel="canonical" href="https://docs.python.org/2/library/exceptions.html" />
    <script type="text/javascript" src="../_static/copybutton.js"></script>
    
 
    

  </head><body>  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="strings.html" title="7. String Services"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="stdtypes.html" title="5. Built-in Types"
             accesskey="P">previous</a> |</li>
        <li><img src="../_static/py.png" alt=""
                 style="vertical-align: middle; margin-top: -1px"/></li>
        <li><a href="https://www.python.org/">Python</a> &#187;</li>
        <li>
          <a href="../index.html">Python 2.7.17 documentation</a> &#187;
        </li>

          <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">The Python Standard Library</a> &#187;</li> 
      </ul>
    </div>    

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="module-exceptions">
<span id="built-in-exceptions"></span><span id="bltin-exceptions"></span><h1>6. Built-in Exceptions<a class="headerlink" href="#module-exceptions" title="Permalink to this headline">¶</a></h1>
<p>Exceptions should be class objects.   The exceptions are defined in the module
<a class="reference internal" href="#module-exceptions" title="exceptions: Standard exception classes."><code class="xref py py-mod docutils literal notranslate"><span class="pre">exceptions</span></code></a>.  This module never needs to be imported explicitly: the
exceptions are provided in the built-in namespace as well as the
<a class="reference internal" href="#module-exceptions" title="exceptions: Standard exception classes."><code class="xref py py-mod docutils literal notranslate"><span class="pre">exceptions</span></code></a> module.</p>
<p id="index-0">For class exceptions, in a <a class="reference internal" href="../reference/compound_stmts.html#try"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">try</span></code></a> statement with an <a class="reference internal" href="../reference/compound_stmts.html#except"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">except</span></code></a>
clause that mentions a particular class, that clause also handles any exception
classes derived from that class (but not exception classes from which <em>it</em> is
derived).  Two exception classes that are not related via subclassing are never
equivalent, even if they have the same name.</p>
<p id="index-1">The built-in exceptions listed below can be generated by the interpreter or
built-in functions.  Except where mentioned, they have an “associated value”
indicating the detailed cause of the error.  This may be a string or a tuple
containing several items of information (e.g., an error code and a string
explaining the code). The associated value is the second argument to the
<a class="reference internal" href="../reference/simple_stmts.html#raise"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">raise</span></code></a> statement.  If the exception class is derived from the standard
root class <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>, the associated value is present as the
exception instance’s <code class="xref py py-attr docutils literal notranslate"><span class="pre">args</span></code> attribute.</p>
<p>User code can raise built-in exceptions.  This can be used to test an exception
handler or to report an error condition “just like” the situation in which the
interpreter raises the same exception; but beware that there is nothing to
prevent user code from raising an inappropriate error.</p>
<p>The built-in exception classes can be subclassed to define new exceptions;
programmers are encouraged to derive new exceptions from the <a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a>
class or one of its subclasses, and not from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>.  More
information on defining exceptions is available in the Python Tutorial under
<a class="reference internal" href="../tutorial/errors.html#tut-userexceptions"><span class="std std-ref">User-defined Exceptions</span></a>.</p>
<p>The following exceptions are only used as base classes for other exceptions.</p>
<dl class="exception">
<dt id="exceptions.BaseException">
<em class="property">exception </em><code class="descname">BaseException</code><a class="headerlink" href="#exceptions.BaseException" title="Permalink to this definition">¶</a></dt>
<dd><p>The base class for all built-in exceptions.  It is not meant to be directly
inherited by user-defined classes (for that, use <a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a>).  If
<a class="reference internal" href="functions.html#str" title="str"><code class="xref py py-func docutils literal notranslate"><span class="pre">str()</span></code></a> or <a class="reference internal" href="functions.html#unicode" title="unicode"><code class="xref py py-func docutils literal notranslate"><span class="pre">unicode()</span></code></a> is called on an instance of this class, the
representation of the argument(s) to the instance are returned, or the empty
string when there were no arguments.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.5.</span></p>
</div>
<dl class="attribute">
<dt id="exceptions.BaseException.args">
<code class="descname">args</code><a class="headerlink" href="#exceptions.BaseException.args" title="Permalink to this definition">¶</a></dt>
<dd><p>The tuple of arguments given to the exception constructor.  Some built-in
exceptions (like <a class="reference internal" href="#exceptions.IOError" title="exceptions.IOError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">IOError</span></code></a>) expect a certain number of arguments and
assign a special meaning to the elements of this tuple, while others are
usually called only with a single string giving an error message.</p>
</dd></dl>

</dd></dl>

<dl class="exception">
<dt id="exceptions.Exception">
<em class="property">exception </em><code class="descname">Exception</code><a class="headerlink" href="#exceptions.Exception" title="Permalink to this definition">¶</a></dt>
<dd><p>All built-in, non-system-exiting exceptions are derived from this class.  All
user-defined exceptions should also be derived from this class.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.5: </span>Changed to inherit from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.StandardError">
<em class="property">exception </em><code class="descname">StandardError</code><a class="headerlink" href="#exceptions.StandardError" title="Permalink to this definition">¶</a></dt>
<dd><p>The base class for all built-in exceptions except <a class="reference internal" href="#exceptions.StopIteration" title="exceptions.StopIteration"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StopIteration</span></code></a>,
<a class="reference internal" href="#exceptions.GeneratorExit" title="exceptions.GeneratorExit"><code class="xref py py-exc docutils literal notranslate"><span class="pre">GeneratorExit</span></code></a>, <a class="reference internal" href="#exceptions.KeyboardInterrupt" title="exceptions.KeyboardInterrupt"><code class="xref py py-exc docutils literal notranslate"><span class="pre">KeyboardInterrupt</span></code></a> and <a class="reference internal" href="#exceptions.SystemExit" title="exceptions.SystemExit"><code class="xref py py-exc docutils literal notranslate"><span class="pre">SystemExit</span></code></a>.
<a class="reference internal" href="#exceptions.StandardError" title="exceptions.StandardError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StandardError</span></code></a> itself is derived from <a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ArithmeticError">
<em class="property">exception </em><code class="descname">ArithmeticError</code><a class="headerlink" href="#exceptions.ArithmeticError" title="Permalink to this definition">¶</a></dt>
<dd><p>The base class for those built-in exceptions that are raised for various
arithmetic errors: <a class="reference internal" href="#exceptions.OverflowError" title="exceptions.OverflowError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">OverflowError</span></code></a>, <a class="reference internal" href="#exceptions.ZeroDivisionError" title="exceptions.ZeroDivisionError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ZeroDivisionError</span></code></a>,
<a class="reference internal" href="#exceptions.FloatingPointError" title="exceptions.FloatingPointError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">FloatingPointError</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.BufferError">
<em class="property">exception </em><code class="descname">BufferError</code><a class="headerlink" href="#exceptions.BufferError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a <a class="reference internal" href="../c-api/buffer.html#bufferobjects"><span class="std std-ref">buffer</span></a> related operation cannot be
performed.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.LookupError">
<em class="property">exception </em><code class="descname">LookupError</code><a class="headerlink" href="#exceptions.LookupError" title="Permalink to this definition">¶</a></dt>
<dd><p>The base class for the exceptions that are raised when a key or index used on
a mapping or sequence is invalid: <a class="reference internal" href="#exceptions.IndexError" title="exceptions.IndexError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">IndexError</span></code></a>, <a class="reference internal" href="#exceptions.KeyError" title="exceptions.KeyError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">KeyError</span></code></a>.  This
can be raised directly by <a class="reference internal" href="codecs.html#codecs.lookup" title="codecs.lookup"><code class="xref py py-func docutils literal notranslate"><span class="pre">codecs.lookup()</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.EnvironmentError">
<em class="property">exception </em><code class="descname">EnvironmentError</code><a class="headerlink" href="#exceptions.EnvironmentError" title="Permalink to this definition">¶</a></dt>
<dd><p>The base class for exceptions that can occur outside the Python system:
<a class="reference internal" href="#exceptions.IOError" title="exceptions.IOError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">IOError</span></code></a>, <a class="reference internal" href="#exceptions.OSError" title="exceptions.OSError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">OSError</span></code></a>.  When exceptions of this type are created with a
2-tuple, the first item is available on the instance’s <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-attr docutils literal notranslate"><span class="pre">errno</span></code></a> attribute
(it is assumed to be an error number), and the second item is available on the
<code class="xref py py-attr docutils literal notranslate"><span class="pre">strerror</span></code> attribute (it is usually the associated error message).  The
tuple itself is also available on the <code class="xref py py-attr docutils literal notranslate"><span class="pre">args</span></code> attribute.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 1.5.2.</span></p>
</div>
<p>When an <a class="reference internal" href="#exceptions.EnvironmentError" title="exceptions.EnvironmentError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">EnvironmentError</span></code></a> exception is instantiated with a 3-tuple, the
first two items are available as above, while the third item is available on the
<code class="xref py py-attr docutils literal notranslate"><span class="pre">filename</span></code> attribute.  However, for backwards compatibility, the
<code class="xref py py-attr docutils literal notranslate"><span class="pre">args</span></code> attribute contains only a 2-tuple of the first two constructor
arguments.</p>
<p>The <code class="xref py py-attr docutils literal notranslate"><span class="pre">filename</span></code> attribute is <code class="docutils literal notranslate"><span class="pre">None</span></code> when this exception is created with
other than 3 arguments.  The <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-attr docutils literal notranslate"><span class="pre">errno</span></code></a> and <code class="xref py py-attr docutils literal notranslate"><span class="pre">strerror</span></code> attributes are
also <code class="docutils literal notranslate"><span class="pre">None</span></code> when the instance was created with other than 2 or 3 arguments.
In this last case, <code class="xref py py-attr docutils literal notranslate"><span class="pre">args</span></code> contains the verbatim constructor arguments as a
tuple.</p>
</dd></dl>

<p>The following exceptions are the exceptions that are actually raised.</p>
<dl class="exception">
<dt id="exceptions.AssertionError">
<em class="property">exception </em><code class="descname">AssertionError</code><a class="headerlink" href="#exceptions.AssertionError" title="Permalink to this definition">¶</a></dt>
<dd><p id="index-2">Raised when an <a class="reference internal" href="../reference/simple_stmts.html#assert"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">assert</span></code></a> statement fails.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.AttributeError">
<em class="property">exception </em><code class="descname">AttributeError</code><a class="headerlink" href="#exceptions.AttributeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an attribute reference (see <a class="reference internal" href="../reference/expressions.html#attribute-references"><span class="std std-ref">Attribute references</span></a>) or
assignment fails.  (When an object does not support attribute references or
attribute assignments at all, <a class="reference internal" href="#exceptions.TypeError" title="exceptions.TypeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">TypeError</span></code></a> is raised.)</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.EOFError">
<em class="property">exception </em><code class="descname">EOFError</code><a class="headerlink" href="#exceptions.EOFError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when one of the built-in functions (<a class="reference internal" href="functions.html#input" title="input"><code class="xref py py-func docutils literal notranslate"><span class="pre">input()</span></code></a> or <a class="reference internal" href="functions.html#raw_input" title="raw_input"><code class="xref py py-func docutils literal notranslate"><span class="pre">raw_input()</span></code></a>)
hits an end-of-file condition (EOF) without reading any data. (N.B.: the
<a class="reference internal" href="stdtypes.html#file.read" title="file.read"><code class="xref py py-meth docutils literal notranslate"><span class="pre">file.read()</span></code></a> and <a class="reference internal" href="stdtypes.html#file.readline" title="file.readline"><code class="xref py py-meth docutils literal notranslate"><span class="pre">file.readline()</span></code></a> methods return an empty string
when they hit EOF.)</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.FloatingPointError">
<em class="property">exception </em><code class="descname">FloatingPointError</code><a class="headerlink" href="#exceptions.FloatingPointError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a floating point operation fails.  This exception is always defined,
but can only be raised when Python is configured with the
<code class="docutils literal notranslate"><span class="pre">--with-fpectl</span></code> option, or the <code class="xref py py-const docutils literal notranslate"><span class="pre">WANT_SIGFPE_HANDLER</span></code> symbol is
defined in the <code class="file docutils literal notranslate"><span class="pre">pyconfig.h</span></code> file.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.GeneratorExit">
<em class="property">exception </em><code class="descname">GeneratorExit</code><a class="headerlink" href="#exceptions.GeneratorExit" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a <a class="reference internal" href="../glossary.html#term-generator"><span class="xref std std-term">generator</span></a>’s <code class="xref py py-meth docutils literal notranslate"><span class="pre">close()</span></code> method is called.  It
directly inherits from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a> instead of <a class="reference internal" href="#exceptions.StandardError" title="exceptions.StandardError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StandardError</span></code></a>
since it is technically not an error.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.5.</span></p>
</div>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.6: </span>Changed to inherit from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.IOError">
<em class="property">exception </em><code class="descname">IOError</code><a class="headerlink" href="#exceptions.IOError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an I/O operation (such as a <a class="reference internal" href="../reference/simple_stmts.html#print"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">print</span></code></a> statement, the built-in
<a class="reference internal" href="functions.html#open" title="open"><code class="xref py py-func docutils literal notranslate"><span class="pre">open()</span></code></a> function or a method of a file object) fails for an I/O-related
reason, e.g., “file not found” or “disk full”.</p>
<p>This class is derived from <a class="reference internal" href="#exceptions.EnvironmentError" title="exceptions.EnvironmentError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">EnvironmentError</span></code></a>.  See the discussion above
for more information on exception instance attributes.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.6: </span>Changed <a class="reference internal" href="socket.html#socket.error" title="socket.error"><code class="xref py py-exc docutils literal notranslate"><span class="pre">socket.error</span></code></a> to use this as a base class.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ImportError">
<em class="property">exception </em><code class="descname">ImportError</code><a class="headerlink" href="#exceptions.ImportError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an <a class="reference internal" href="../reference/simple_stmts.html#import"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">import</span></code></a> statement fails to find the module definition
or when a <code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">...</span> <span class="pre">import</span></code> fails to find a name that is to be imported.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.IndexError">
<em class="property">exception </em><code class="descname">IndexError</code><a class="headerlink" href="#exceptions.IndexError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a sequence subscript is out of range.  (Slice indices are silently
truncated to fall in the allowed range; if an index is not a plain integer,
<a class="reference internal" href="#exceptions.TypeError" title="exceptions.TypeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">TypeError</span></code></a> is raised.)</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.KeyError">
<em class="property">exception </em><code class="descname">KeyError</code><a class="headerlink" href="#exceptions.KeyError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a mapping (dictionary) key is not found in the set of existing keys.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.KeyboardInterrupt">
<em class="property">exception </em><code class="descname">KeyboardInterrupt</code><a class="headerlink" href="#exceptions.KeyboardInterrupt" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when the user hits the interrupt key (normally <kbd class="kbd docutils literal notranslate">Control-C</kbd> or
<kbd class="kbd docutils literal notranslate">Delete</kbd>).  During execution, a check for interrupts is made regularly.
Interrupts typed when a built-in function <a class="reference internal" href="functions.html#input" title="input"><code class="xref py py-func docutils literal notranslate"><span class="pre">input()</span></code></a> or <a class="reference internal" href="functions.html#raw_input" title="raw_input"><code class="xref py py-func docutils literal notranslate"><span class="pre">raw_input()</span></code></a> is
waiting for input also raise this exception. The exception inherits from
<a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a> so as to not be accidentally caught by code that catches
<a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a> and thus prevent the interpreter from exiting.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.5: </span>Changed to inherit from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.MemoryError">
<em class="property">exception </em><code class="descname">MemoryError</code><a class="headerlink" href="#exceptions.MemoryError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an operation runs out of memory but the situation may still be
rescued (by deleting some objects).  The associated value is a string indicating
what kind of (internal) operation ran out of memory. Note that because of the
underlying memory management architecture (C’s <code class="xref c c-func docutils literal notranslate"><span class="pre">malloc()</span></code> function), the
interpreter may not always be able to completely recover from this situation; it
nevertheless raises an exception so that a stack traceback can be printed, in
case a run-away program was the cause.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.NameError">
<em class="property">exception </em><code class="descname">NameError</code><a class="headerlink" href="#exceptions.NameError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a local or global name is not found.  This applies only to
unqualified names.  The associated value is an error message that includes the
name that could not be found.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.NotImplementedError">
<em class="property">exception </em><code class="descname">NotImplementedError</code><a class="headerlink" href="#exceptions.NotImplementedError" title="Permalink to this definition">¶</a></dt>
<dd><p>This exception is derived from <a class="reference internal" href="#exceptions.RuntimeError" title="exceptions.RuntimeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">RuntimeError</span></code></a>.  In user defined base
classes, abstract methods should raise this exception when they require derived
classes to override the method.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 1.5.2.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.OSError">
<em class="property">exception </em><code class="descname">OSError</code><a class="headerlink" href="#exceptions.OSError" title="Permalink to this definition">¶</a></dt>
<dd><p id="index-3">This exception is derived from <a class="reference internal" href="#exceptions.EnvironmentError" title="exceptions.EnvironmentError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">EnvironmentError</span></code></a>.  It is raised when a
function returns a system-related error (not for illegal argument types or
other incidental errors).  The <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-attr docutils literal notranslate"><span class="pre">errno</span></code></a> attribute is a numeric error
code from <code class="xref c c-data docutils literal notranslate"><span class="pre">errno</span></code>, and the <code class="xref py py-attr docutils literal notranslate"><span class="pre">strerror</span></code> attribute is the
corresponding string, as would be printed by the C function <code class="xref c c-func docutils literal notranslate"><span class="pre">perror()</span></code>.
See the module <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-mod docutils literal notranslate"><span class="pre">errno</span></code></a>, which contains names for the error codes defined
by the underlying operating system.</p>
<p>For exceptions that involve a file system path (such as <code class="xref py py-func docutils literal notranslate"><span class="pre">chdir()</span></code> or
<code class="xref py py-func docutils literal notranslate"><span class="pre">unlink()</span></code>), the exception instance will contain a third attribute,
<code class="xref py py-attr docutils literal notranslate"><span class="pre">filename</span></code>, which is the file name passed to the function.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 1.5.2.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.OverflowError">
<em class="property">exception </em><code class="descname">OverflowError</code><a class="headerlink" href="#exceptions.OverflowError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when the result of an arithmetic operation is too large to be
represented.  This cannot occur for long integers (which would rather raise
<a class="reference internal" href="#exceptions.MemoryError" title="exceptions.MemoryError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">MemoryError</span></code></a> than give up) and for most operations with plain integers,
which return a long integer instead.  Because of the lack of standardization
of floating point exception handling in C, most floating point operations
also aren’t checked.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ReferenceError">
<em class="property">exception </em><code class="descname">ReferenceError</code><a class="headerlink" href="#exceptions.ReferenceError" title="Permalink to this definition">¶</a></dt>
<dd><p>This exception is raised when a weak reference proxy, created by the
<a class="reference internal" href="weakref.html#weakref.proxy" title="weakref.proxy"><code class="xref py py-func docutils literal notranslate"><span class="pre">weakref.proxy()</span></code></a> function, is used to access an attribute of the referent
after it has been garbage collected. For more information on weak references,
see the <a class="reference internal" href="weakref.html#module-weakref" title="weakref: Support for weak references and weak dictionaries."><code class="xref py py-mod docutils literal notranslate"><span class="pre">weakref</span></code></a> module.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.2: </span>Previously known as the <a class="reference internal" href="weakref.html#weakref.ReferenceError" title="weakref.ReferenceError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">weakref.ReferenceError</span></code></a> exception.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.RuntimeError">
<em class="property">exception </em><code class="descname">RuntimeError</code><a class="headerlink" href="#exceptions.RuntimeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an error is detected that doesn’t fall in any of the other
categories.  The associated value is a string indicating what precisely went
wrong.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.StopIteration">
<em class="property">exception </em><code class="descname">StopIteration</code><a class="headerlink" href="#exceptions.StopIteration" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised by an <a class="reference internal" href="../glossary.html#term-iterator"><span class="xref std std-term">iterator</span></a>’s <a class="reference internal" href="stdtypes.html#iterator.next" title="iterator.next"><code class="xref py py-meth docutils literal notranslate"><span class="pre">next()</span></code></a> method to signal that
there are no further values.  This is derived from <a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a> rather
than <a class="reference internal" href="#exceptions.StandardError" title="exceptions.StandardError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StandardError</span></code></a>, since this is not considered an error in its
normal application.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.2.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.SyntaxError">
<em class="property">exception </em><code class="descname">SyntaxError</code><a class="headerlink" href="#exceptions.SyntaxError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when the parser encounters a syntax error.  This may occur in an
<a class="reference internal" href="../reference/simple_stmts.html#import"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">import</span></code></a> statement, in an <a class="reference internal" href="../reference/simple_stmts.html#exec"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">exec</span></code></a> statement, in a call to the
built-in function <a class="reference internal" href="functions.html#eval" title="eval"><code class="xref py py-func docutils literal notranslate"><span class="pre">eval()</span></code></a> or <a class="reference internal" href="functions.html#input" title="input"><code class="xref py py-func docutils literal notranslate"><span class="pre">input()</span></code></a>, or when reading the initial
script or standard input (also interactively).</p>
<p>Instances of this class have attributes <code class="xref py py-attr docutils literal notranslate"><span class="pre">filename</span></code>, <code class="xref py py-attr docutils literal notranslate"><span class="pre">lineno</span></code>,
<code class="xref py py-attr docutils literal notranslate"><span class="pre">offset</span></code> and <code class="xref py py-attr docutils literal notranslate"><span class="pre">text</span></code> for easier access to the details.  <a class="reference internal" href="functions.html#str" title="str"><code class="xref py py-func docutils literal notranslate"><span class="pre">str()</span></code></a>
of the exception instance returns only the message.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.IndentationError">
<em class="property">exception </em><code class="descname">IndentationError</code><a class="headerlink" href="#exceptions.IndentationError" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for syntax errors related to incorrect indentation.  This is a
subclass of <a class="reference internal" href="#exceptions.SyntaxError" title="exceptions.SyntaxError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">SyntaxError</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.TabError">
<em class="property">exception </em><code class="descname">TabError</code><a class="headerlink" href="#exceptions.TabError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when indentation contains an inconsistent use of tabs and spaces.
This is a subclass of <a class="reference internal" href="#exceptions.IndentationError" title="exceptions.IndentationError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">IndentationError</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.SystemError">
<em class="property">exception </em><code class="descname">SystemError</code><a class="headerlink" href="#exceptions.SystemError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when the interpreter finds an internal error, but the situation does not
look so serious to cause it to abandon all hope. The associated value is a
string indicating what went wrong (in low-level terms).</p>
<p>You should report this to the author or maintainer of your Python interpreter.
Be sure to report the version of the Python interpreter (<code class="docutils literal notranslate"><span class="pre">sys.version</span></code>; it is
also printed at the start of an interactive Python session), the exact error
message (the exception’s associated value) and if possible the source of the
program that triggered the error.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.SystemExit">
<em class="property">exception </em><code class="descname">SystemExit</code><a class="headerlink" href="#exceptions.SystemExit" title="Permalink to this definition">¶</a></dt>
<dd><p>This exception is raised by the <a class="reference internal" href="sys.html#sys.exit" title="sys.exit"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exit()</span></code></a> function.  When it is not
handled, the Python interpreter exits; no stack traceback is printed.  If the
associated value is a plain integer, it specifies the system exit status (passed
to C’s <code class="xref c c-func docutils literal notranslate"><span class="pre">exit()</span></code> function); if it is <code class="docutils literal notranslate"><span class="pre">None</span></code>, the exit status is zero; if
it has another type (such as a string), the object’s value is printed and the
exit status is one.</p>
<p>Instances have an attribute <code class="xref py py-attr docutils literal notranslate"><span class="pre">code</span></code> which is set to the proposed exit
status or error message (defaulting to <code class="docutils literal notranslate"><span class="pre">None</span></code>). Also, this exception derives
directly from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a> and not <a class="reference internal" href="#exceptions.StandardError" title="exceptions.StandardError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StandardError</span></code></a>, since it is not
technically an error.</p>
<p>A call to <a class="reference internal" href="sys.html#sys.exit" title="sys.exit"><code class="xref py py-func docutils literal notranslate"><span class="pre">sys.exit()</span></code></a> is translated into an exception so that clean-up
handlers (<a class="reference internal" href="../reference/compound_stmts.html#finally"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">finally</span></code></a> clauses of <a class="reference internal" href="../reference/compound_stmts.html#try"><code class="xref std std-keyword docutils literal notranslate"><span class="pre">try</span></code></a> statements) can be
executed, and so that a debugger can execute a script without running the risk
of losing control.  The <a class="reference internal" href="os.html#os._exit" title="os._exit"><code class="xref py py-func docutils literal notranslate"><span class="pre">os._exit()</span></code></a> function can be used if it is
absolutely positively necessary to exit immediately (for example, in the child
process after a call to <a class="reference internal" href="os.html#os.fork" title="os.fork"><code class="xref py py-func docutils literal notranslate"><span class="pre">os.fork()</span></code></a>).</p>
<p>The exception inherits from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a> instead of <a class="reference internal" href="#exceptions.StandardError" title="exceptions.StandardError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">StandardError</span></code></a>
or <a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a> so that it is not accidentally caught by code that catches
<a class="reference internal" href="#exceptions.Exception" title="exceptions.Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a>.  This allows the exception to properly propagate up and cause
the interpreter to exit.</p>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.5: </span>Changed to inherit from <a class="reference internal" href="#exceptions.BaseException" title="exceptions.BaseException"><code class="xref py py-exc docutils literal notranslate"><span class="pre">BaseException</span></code></a>.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.TypeError">
<em class="property">exception </em><code class="descname">TypeError</code><a class="headerlink" href="#exceptions.TypeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an operation or function is applied to an object of inappropriate
type.  The associated value is a string giving details about the type mismatch.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnboundLocalError">
<em class="property">exception </em><code class="descname">UnboundLocalError</code><a class="headerlink" href="#exceptions.UnboundLocalError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a reference is made to a local variable in a function or method, but
no value has been bound to that variable.  This is a subclass of
<a class="reference internal" href="#exceptions.NameError" title="exceptions.NameError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">NameError</span></code></a>.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.0.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnicodeError">
<em class="property">exception </em><code class="descname">UnicodeError</code><a class="headerlink" href="#exceptions.UnicodeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a Unicode-related encoding or decoding error occurs.  It is a
subclass of <a class="reference internal" href="#exceptions.ValueError" title="exceptions.ValueError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ValueError</span></code></a>.</p>
<p><a class="reference internal" href="#exceptions.UnicodeError" title="exceptions.UnicodeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">UnicodeError</span></code></a> has attributes that describe the encoding or decoding
error.  For example, <code class="docutils literal notranslate"><span class="pre">err.object[err.start:err.end]</span></code> gives the particular
invalid input that the codec failed on.</p>
<dl class="attribute">
<dt id="exceptions.UnicodeError.encoding">
<code class="descname">encoding</code><a class="headerlink" href="#exceptions.UnicodeError.encoding" title="Permalink to this definition">¶</a></dt>
<dd><p>The name of the encoding that raised the error.</p>
</dd></dl>

<dl class="attribute">
<dt id="exceptions.UnicodeError.reason">
<code class="descname">reason</code><a class="headerlink" href="#exceptions.UnicodeError.reason" title="Permalink to this definition">¶</a></dt>
<dd><p>A string describing the specific codec error.</p>
</dd></dl>

<dl class="attribute">
<dt id="exceptions.UnicodeError.object">
<code class="descname">object</code><a class="headerlink" href="#exceptions.UnicodeError.object" title="Permalink to this definition">¶</a></dt>
<dd><p>The object the codec was attempting to encode or decode.</p>
</dd></dl>

<dl class="attribute">
<dt id="exceptions.UnicodeError.start">
<code class="descname">start</code><a class="headerlink" href="#exceptions.UnicodeError.start" title="Permalink to this definition">¶</a></dt>
<dd><p>The first index of invalid data in <a class="reference internal" href="functions.html#object" title="object"><code class="xref py py-attr docutils literal notranslate"><span class="pre">object</span></code></a>.</p>
</dd></dl>

<dl class="attribute">
<dt id="exceptions.UnicodeError.end">
<code class="descname">end</code><a class="headerlink" href="#exceptions.UnicodeError.end" title="Permalink to this definition">¶</a></dt>
<dd><p>The index after the last invalid data in <a class="reference internal" href="functions.html#object" title="object"><code class="xref py py-attr docutils literal notranslate"><span class="pre">object</span></code></a>.</p>
</dd></dl>

<div class="versionadded">
<p><span class="versionmodified added">New in version 2.0.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnicodeEncodeError">
<em class="property">exception </em><code class="descname">UnicodeEncodeError</code><a class="headerlink" href="#exceptions.UnicodeEncodeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a Unicode-related error occurs during encoding.  It is a subclass of
<a class="reference internal" href="#exceptions.UnicodeError" title="exceptions.UnicodeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">UnicodeError</span></code></a>.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.3.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnicodeDecodeError">
<em class="property">exception </em><code class="descname">UnicodeDecodeError</code><a class="headerlink" href="#exceptions.UnicodeDecodeError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a Unicode-related error occurs during decoding.  It is a subclass of
<a class="reference internal" href="#exceptions.UnicodeError" title="exceptions.UnicodeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">UnicodeError</span></code></a>.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.3.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnicodeTranslateError">
<em class="property">exception </em><code class="descname">UnicodeTranslateError</code><a class="headerlink" href="#exceptions.UnicodeTranslateError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a Unicode-related error occurs during translating.  It is a subclass
of <a class="reference internal" href="#exceptions.UnicodeError" title="exceptions.UnicodeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">UnicodeError</span></code></a>.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.3.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ValueError">
<em class="property">exception </em><code class="descname">ValueError</code><a class="headerlink" href="#exceptions.ValueError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when an operation or function receives an argument that has the
right type but an inappropriate value, and the situation is not described by a
more precise exception such as <a class="reference internal" href="#exceptions.IndexError" title="exceptions.IndexError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">IndexError</span></code></a>.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.VMSError">
<em class="property">exception </em><code class="descname">VMSError</code><a class="headerlink" href="#exceptions.VMSError" title="Permalink to this definition">¶</a></dt>
<dd><p>Only available on VMS.  Raised when a VMS-specific error occurs.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.WindowsError">
<em class="property">exception </em><code class="descname">WindowsError</code><a class="headerlink" href="#exceptions.WindowsError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when a Windows-specific error occurs or when the error number does not
correspond to an <code class="xref c c-data docutils literal notranslate"><span class="pre">errno</span></code> value.  The <code class="xref py py-attr docutils literal notranslate"><span class="pre">winerror</span></code> and
<code class="xref py py-attr docutils literal notranslate"><span class="pre">strerror</span></code> values are created from the return values of the
<code class="xref c c-func docutils literal notranslate"><span class="pre">GetLastError()</span></code> and <code class="xref c c-func docutils literal notranslate"><span class="pre">FormatMessage()</span></code> functions from the Windows
Platform API. The <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-attr docutils literal notranslate"><span class="pre">errno</span></code></a> value maps the <code class="xref py py-attr docutils literal notranslate"><span class="pre">winerror</span></code> value to
corresponding <code class="docutils literal notranslate"><span class="pre">errno.h</span></code> values. This is a subclass of <a class="reference internal" href="#exceptions.OSError" title="exceptions.OSError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">OSError</span></code></a>.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.0.</span></p>
</div>
<div class="versionchanged">
<p><span class="versionmodified changed">Changed in version 2.5: </span>Previous versions put the <code class="xref c c-func docutils literal notranslate"><span class="pre">GetLastError()</span></code> codes into <a class="reference internal" href="errno.html#module-errno" title="errno: Standard errno system symbols."><code class="xref py py-attr docutils literal notranslate"><span class="pre">errno</span></code></a>.</p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ZeroDivisionError">
<em class="property">exception </em><code class="descname">ZeroDivisionError</code><a class="headerlink" href="#exceptions.ZeroDivisionError" title="Permalink to this definition">¶</a></dt>
<dd><p>Raised when the second argument of a division or modulo operation is zero.  The
associated value is a string indicating the type of the operands and the
operation.</p>
</dd></dl>

<p>The following exceptions are used as warning categories; see the <a class="reference internal" href="warnings.html#module-warnings" title="warnings: Issue warning messages and control their disposition."><code class="xref py py-mod docutils literal notranslate"><span class="pre">warnings</span></code></a>
module for more information.</p>
<dl class="exception">
<dt id="exceptions.Warning">
<em class="property">exception </em><code class="descname">Warning</code><a class="headerlink" href="#exceptions.Warning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warning categories.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UserWarning">
<em class="property">exception </em><code class="descname">UserWarning</code><a class="headerlink" href="#exceptions.UserWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings generated by user code.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.DeprecationWarning">
<em class="property">exception </em><code class="descname">DeprecationWarning</code><a class="headerlink" href="#exceptions.DeprecationWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about deprecated features.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.PendingDeprecationWarning">
<em class="property">exception </em><code class="descname">PendingDeprecationWarning</code><a class="headerlink" href="#exceptions.PendingDeprecationWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about features which will be deprecated in the future.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.SyntaxWarning">
<em class="property">exception </em><code class="descname">SyntaxWarning</code><a class="headerlink" href="#exceptions.SyntaxWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about dubious syntax.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.RuntimeWarning">
<em class="property">exception </em><code class="descname">RuntimeWarning</code><a class="headerlink" href="#exceptions.RuntimeWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about dubious runtime behavior.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.FutureWarning">
<em class="property">exception </em><code class="descname">FutureWarning</code><a class="headerlink" href="#exceptions.FutureWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about constructs that will change semantically in the
future.</p>
</dd></dl>

<dl class="exception">
<dt id="exceptions.ImportWarning">
<em class="property">exception </em><code class="descname">ImportWarning</code><a class="headerlink" href="#exceptions.ImportWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings about probable mistakes in module imports.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.5.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.UnicodeWarning">
<em class="property">exception </em><code class="descname">UnicodeWarning</code><a class="headerlink" href="#exceptions.UnicodeWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings related to Unicode.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.5.</span></p>
</div>
</dd></dl>

<dl class="exception">
<dt id="exceptions.BytesWarning">
<em class="property">exception </em><code class="descname">BytesWarning</code><a class="headerlink" href="#exceptions.BytesWarning" title="Permalink to this definition">¶</a></dt>
<dd><p>Base class for warnings related to bytes and bytearray.</p>
<div class="versionadded">
<p><span class="versionmodified added">New in version 2.6.</span></p>
</div>
</dd></dl>

<div class="section" id="exception-hierarchy">
<h2>6.1. Exception hierarchy<a class="headerlink" href="#exception-hierarchy" title="Permalink to this headline">¶</a></h2>
<p>The class hierarchy for built-in exceptions is:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="ne">BaseException</span>
 <span class="o">+--</span> <span class="ne">SystemExit</span>
 <span class="o">+--</span> <span class="ne">KeyboardInterrupt</span>
 <span class="o">+--</span> <span class="ne">GeneratorExit</span>
 <span class="o">+--</span> <span class="ne">Exception</span>
      <span class="o">+--</span> <span class="ne">StopIteration</span>
      <span class="o">+--</span> <span class="n">StandardError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">BufferError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">ArithmeticError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">FloatingPointError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">OverflowError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">ZeroDivisionError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">AssertionError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">AttributeError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">EnvironmentError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">IOError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">OSError</span>
      <span class="o">|</span>    <span class="o">|</span>         <span class="o">+--</span> <span class="ne">WindowsError</span> <span class="p">(</span><span class="n">Windows</span><span class="p">)</span>
      <span class="o">|</span>    <span class="o">|</span>         <span class="o">+--</span> <span class="ne">VMSError</span> <span class="p">(</span><span class="n">VMS</span><span class="p">)</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">EOFError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">ImportError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">LookupError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">IndexError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">KeyError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">MemoryError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">NameError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">UnboundLocalError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">ReferenceError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">RuntimeError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">NotImplementedError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">SyntaxError</span>
      <span class="o">|</span>    <span class="o">|</span>    <span class="o">+--</span> <span class="ne">IndentationError</span>
      <span class="o">|</span>    <span class="o">|</span>         <span class="o">+--</span> <span class="ne">TabError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">SystemError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">TypeError</span>
      <span class="o">|</span>    <span class="o">+--</span> <span class="ne">ValueError</span>
      <span class="o">|</span>         <span class="o">+--</span> <span class="ne">UnicodeError</span>
      <span class="o">|</span>              <span class="o">+--</span> <span class="ne">UnicodeDecodeError</span>
      <span class="o">|</span>              <span class="o">+--</span> <span class="ne">UnicodeEncodeError</span>
      <span class="o">|</span>              <span class="o">+--</span> <span class="ne">UnicodeTranslateError</span>
      <span class="o">+--</span> <span class="ne">Warning</span>
           <span class="o">+--</span> <span class="ne">DeprecationWarning</span>
           <span class="o">+--</span> <span class="ne">PendingDeprecationWarning</span>
           <span class="o">+--</span> <span class="ne">RuntimeWarning</span>
           <span class="o">+--</span> <span class="ne">SyntaxWarning</span>
           <span class="o">+--</span> <span class="ne">UserWarning</span>
           <span class="o">+--</span> <span class="ne">FutureWarning</span>
	   <span class="o">+--</span> <span class="ne">ImportWarning</span>
	   <span class="o">+--</span> <span class="ne">UnicodeWarning</span>
	   <span class="o">+--</span> <span class="ne">BytesWarning</span>
</pre></div>
</div>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="../contents.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">6. Built-in Exceptions</a><ul>
<li><a class="reference internal" href="#exception-hierarchy">6.1. Exception hierarchy</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="stdtypes.html"
                        title="previous chapter">5. Built-in Types</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="strings.html"
                        title="next chapter">7. String Services</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/library/exceptions.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="strings.html" title="7. String Services"
             >next</a> |</li>
        <li class="right" >
          <a href="stdtypes.html" title="5. Built-in Types"
             >previous</a> |</li>
        <li><img src="../_static/py.png" alt=""
                 style="vertical-align: middle; margin-top: -1px"/></li>
        <li><a href="https://www.python.org/">Python</a> &#187;</li>
        <li>
          <a href="../index.html">Python 2.7.17 documentation</a> &#187;
        </li>

          <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li> 
      </ul>
    </div>  
    <div class="footer">
    &copy; <a href="../copyright.html">Copyright</a> 1990-2019, Python Software Foundation.
    <br />
    The Python Software Foundation is a non-profit corporation.
    <a href="https://www.python.org/psf/donations/">Please donate.</a>
    <br />
    Last updated on Oct 19, 2019.
    <a href="../bugs.html">Found a bug</a>?
    <br />
    Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 2.0.1.
    </div>

  </body>
</html>