parthtamu/rag-code-assistant
0
1<!DOCTYPE html>2 3<html lang="en" data-content_root="../">4 <head>5 <meta charset="utf-8" />6 <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />7<meta property="og:title" content="Introduction" />8<meta property="og:type" content="website" />9<meta property="og:url" content="https://docs.python.org/3/library/intro.html" />10<meta property="og:site_name" content="Python documentation" />11<meta property="og:description" content="The “Python library” contains several different kinds of components. It contains data types that would normally be considered part of the “core” of a language, such as numbers and lists. For these ..." />12<meta property="og:image:width" content="1146" />13<meta property="og:image:height" content="600" />14<meta property="og:image" content="https://docs.python.org/3.15/_images/social_previews/summary_library_intro_c6bf2ecc.png" />15<meta property="og:image:alt" content="The “Python library” contains several different kinds of components. It contains data types that would normally be considered part of the “core” of a language, such as numbers and lists. For these ..." />16<meta name="description" content="The “Python library” contains several different kinds of components. It contains data types that would normally be considered part of the “core” of a language, such as numbers and lists. For these ..." />17<meta name="twitter:card" content="summary_large_image" />18<meta name="theme-color" content="#3776ab">19 20 <title>Introduction — Python 3.15.0a6 documentation</title><meta name="viewport" content="width=device-width, initial-scale=1.0">21 22 <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=b86133f3" />23 <link rel="stylesheet" type="text/css" href="../_static/classic.css?v=234b1a7c" />24 <link rel="stylesheet" type="text/css" href="../_static/pydoctheme.css?v=89a2f22a" />25 <link rel="stylesheet" type="text/css" href="../_static/profiling-sampling-visualization.css?v=0c2600ae" />26 <link id="pygments_dark_css" media="(prefers-color-scheme: dark)" rel="stylesheet" type="text/css" href="../_static/pygments_dark.css?v=5349f25f" />27 28 <script src="../_static/documentation_options.js?v=6b7c9ff5"></script>29 <script src="../_static/doctools.js?v=9bcbadda"></script>30 <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>31 <script src="../_static/profiling-sampling-visualization.js?v=9811ed04"></script>32 33 <script src="../_static/sidebar.js"></script>34 35 <link rel="search" type="application/opensearchdescription+xml"36 title="Search within Python 3.15.0a6 documentation"37 href="../_static/opensearch.xml"/>38 <link rel="author" title="About these documents" href="../about.html" />39 <link rel="index" title="Index" href="../genindex.html" />40 <link rel="search" title="Search" href="../search.html" />41 <link rel="copyright" title="Copyright" href="../copyright.html" />42 <link rel="next" title="Built-in Functions" href="functions.html" />43 <link rel="prev" title="The Python Standard Library" href="index.html" />44 45 46 <script defer file-types="bz2,epub,zip" data-domain="docs.python.org" src="https://analytics.python.org/js/script.file-downloads.outbound-links.js"></script>47 48 <link rel="canonical" href="https://docs.python.org/3/library/intro.html">49 50 51 52 53 <style>54 @media only screen {55 table.full-width-table {56 width: 100%;57 }58 }59 </style>60<link rel="stylesheet" href="../_static/pydoctheme_dark.css" media="(prefers-color-scheme: dark)" id="pydoctheme_dark_css">61 <link rel="shortcut icon" type="image/png" href="../_static/py.svg">62 <script type="text/javascript" src="../_static/copybutton.js"></script>63 <script type="text/javascript" src="../_static/menu.js"></script>64 <script type="text/javascript" src="../_static/search-focus.js"></script>65 <script type="text/javascript" src="../_static/themetoggle.js"></script> 66 <script type="text/javascript" src="../_static/rtd_switcher.js"></script>67 <meta name="readthedocs-addons-api-version" content="1">68 69 </head>70<body>71<div class="mobile-nav">72 <input type="checkbox" id="menuToggler" class="toggler__input" aria-controls="navigation"73 aria-pressed="false" aria-expanded="false" role="button" aria-label="Menu">74 <nav class="nav-content" role="navigation">75 <label for="menuToggler" class="toggler__label">76 <span></span>77 </label>78 <span class="nav-items-wrapper">79 <a href="https://www.python.org/" class="nav-logo">80 <img src="../_static/py.svg" alt="Python logo">81 </a>82 <span class="version_switcher_placeholder"></span>83 <form role="search" class="search" action="../search.html" method="get">84 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" class="search-icon">85 <path fill-rule="nonzero" fill="currentColor" d="M15.5 14h-.79l-.28-.27a6.5 6.5 0 001.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 00-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 005.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0 .41-.41.41-1.08 0-1.49L15.5 14zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>86 </svg>87 <input placeholder="Quick search" aria-label="Quick search" type="search" name="q">88 <input type="submit" value="Go">89 </form>90 </span>91 </nav>92 <div class="menu-wrapper">93 <nav class="menu" role="navigation" aria-label="main navigation">94 <div class="language_switcher_placeholder"></div>95 96<label class="theme-selector-label">97 Theme98 <select class="theme-selector" oninput="activateTheme(this.value)">99 <option value="auto" selected>Auto</option>100 <option value="light">Light</option>101 <option value="dark">Dark</option>102 </select>103</label>104 <div>105 <h3><a href="../contents.html">Table of Contents</a></h3>106 <ul>107<li><a class="reference internal" href="#">Introduction</a><ul>108<li><a class="reference internal" href="#notes-on-availability">Notes on availability</a><ul>109<li><a class="reference internal" href="#webassembly-platforms">WebAssembly platforms</a></li>110<li><a class="reference internal" href="#mobile-platforms">Mobile platforms</a></li>111</ul>112</li>113</ul>114</li>115</ul>116 117 </div>118 <div>119 <h4>Previous topic</h4>120 <p class="topless"><a href="index.html"121 title="previous chapter">The Python Standard Library</a></p>122 </div>123 <div>124 <h4>Next topic</h4>125 <p class="topless"><a href="functions.html"126 title="next chapter">Built-in Functions</a></p>127 </div>128 <script>129 document.addEventListener('DOMContentLoaded', () => {130 const title = document.querySelector('meta[property="og:title"]').content;131 const elements = document.querySelectorAll('.improvepage');132 const pageurl = window.location.href.split('?')[0];133 elements.forEach(element => {134 const url = new URL(element.href.split('?')[0].replace("-nojs", ""));135 url.searchParams.set('pagetitle', title);136 url.searchParams.set('pageurl', pageurl);137 url.searchParams.set('pagesource', "library/intro.rst");138 element.href = url.toString();139 });140 });141 </script>142 <div role="note" aria-label="source link">143 <h3>This page</h3>144 <ul class="this-page-menu">145 <li><a href="../bugs.html">Report a bug</a></li>146 <li><a class="improvepage" href="../improve-page-nojs.html">Improve this page</a></li>147 <li>148 <a href="https://github.com/python/cpython/blob/main/Doc/library/intro.rst?plain=1"149 rel="nofollow">Show source150 </a>151 </li>152 153 </ul>154 </div>155 </nav>156 </div>157</div>158 159 160 <div class="related" role="navigation" aria-label="Related">161 <h3>Navigation</h3>162 <ul>163 <li class="right" style="margin-right: 10px">164 <a href="../genindex.html" title="General Index"165 accesskey="I">index</a></li>166 <li class="right" >167 <a href="../py-modindex.html" title="Python Module Index"168 >modules</a> |</li>169 <li class="right" >170 <a href="functions.html" title="Built-in Functions"171 accesskey="N">next</a> |</li>172 <li class="right" >173 <a href="index.html" title="The Python Standard Library"174 accesskey="P">previous</a> |</li>175 176 <li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"></li>177 <li><a href="https://www.python.org/">Python</a> »</li>178 <li class="switchers">179 <div class="language_switcher_placeholder"></div>180 <div class="version_switcher_placeholder"></div>181 </li>182 <li>183 184 </li>185 <li id="cpython-language-and-version">186 <a href="../index.html">3.15.0a6 Documentation</a> »187 </li>188 189 <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">The Python Standard Library</a> »</li>190 <li class="nav-item nav-item-this"><a href="">Introduction</a></li>191 <li class="right">192 193 194 <div class="inline-search" role="search">195 <form class="inline-search" action="../search.html" method="get">196 <input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box">197 <input type="submit" value="Go">198 </form>199 </div>200 |201 </li>202 <li class="right">203<label class="theme-selector-label">204 Theme205 <select class="theme-selector" oninput="activateTheme(this.value)">206 <option value="auto" selected>Auto</option>207 <option value="light">Light</option>208 <option value="dark">Dark</option>209 </select>210</label> |</li>211 212 </ul>213 </div> 214 215 <div class="document">216 <div class="documentwrapper">217 <div class="bodywrapper">218 <div class="body" role="main">219 220 <section id="introduction">221<span id="library-intro"></span><h1>Introduction<a class="headerlink" href="#introduction" title="Link to this heading">¶</a></h1>222<p>The “Python library” contains several different kinds of components.</p>223<p>It contains data types that would normally be considered part of the “core” of a224language, such as numbers and lists. For these types, the Python language core225defines the form of literals and places some constraints on their semantics, but226does not fully define the semantics. (On the other hand, the language core does227define syntactic properties like the spelling and priorities of operators.)</p>228<p>The library also contains built-in functions and exceptions — objects that can229be used by all Python code without the need of 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.230Some of these are defined by the core language, but many are not essential for231the core semantics and are only described here.</p>232<p>The bulk of the library, however, consists of a collection of modules. There are233many ways to dissect this collection. Some modules are written in C and built234in to the Python interpreter; others are written in Python and imported in235source form. Some modules provide interfaces that are highly specific to236Python, like printing a stack trace; some provide interfaces that are specific237to particular operating systems, such as access to specific hardware; others238provide interfaces that are specific to a particular application domain, like239the World Wide Web. Some modules are available in all versions and ports of240Python; others are only available when the underlying system supports or241requires them; yet others are available only when a particular configuration242option was chosen at the time when Python was compiled and installed.</p>243<p>This manual is organized “from the inside out:” it first describes the built-in244functions, data types and exceptions, and finally the modules, grouped in245chapters of related modules.</p>246<p>This means that if you start reading this manual from the start, and skip to the247next chapter when you get bored, you will get a reasonable overview of the248available modules and application areas that are supported by the Python249library. Of course, you don’t <em>have</em> to read it like a novel — you can also250browse the table of contents (in front of the manual), or look for a specific251function, module or term in the index (in the back). And finally, if you enjoy252learning about random subjects, you choose a random page number (see module253<a class="reference internal" href="random.html#module-random" title="random: Generate pseudo-random numbers with various common distributions."><code class="xref py py-mod docutils literal notranslate"><span class="pre">random</span></code></a>) and read a section or two. Regardless of the order in which you254read the sections of this manual, it helps to start with chapter255<a class="reference internal" href="functions.html#built-in-funcs"><span class="std std-ref">Built-in Functions</span></a>, as the remainder of the manual assumes familiarity with256this material.</p>257<p>Let the show begin!</p>258<section id="notes-on-availability">259<span id="availability"></span><h2>Notes on availability<a class="headerlink" href="#notes-on-availability" title="Link to this heading">¶</a></h2>260<ul class="simple">261<li><p>An “Availability: Unix” note means that this function is commonly found on262Unix systems. It does not make any claims about its existence on a specific263operating system.</p></li>264<li><p>If not separately noted, all functions that claim “Availability: Unix” are265supported on macOS, iOS and Android, all of which build on a Unix core.</p></li>266<li><p>If an availability note contains both a minimum Kernel version and a minimum267libc version, then both conditions must hold. For example a feature with note268<em>Availability: Linux >= 3.17 with glibc >= 2.27</em> requires both Linux 3.17 or269newer and glibc 2.27 or newer.</p></li>270</ul>271<section id="webassembly-platforms">272<span id="wasm-availability"></span><h3>WebAssembly platforms<a class="headerlink" href="#webassembly-platforms" title="Link to this heading">¶</a></h3>273<p>The <a class="reference external" href="https://webassembly.org/">WebAssembly</a> platforms <code class="docutils literal notranslate"><span class="pre">wasm32-emscripten</span></code> (<a class="reference external" href="https://emscripten.org/">Emscripten</a>) and274<code class="docutils literal notranslate"><span class="pre">wasm32-wasi</span></code> (<a class="reference external" href="https://wasi.dev/">WASI</a>) provide a subset of POSIX APIs. WebAssembly runtimes275and browsers are sandboxed and have limited access to the host and external276resources. Any Python standard library module that uses processes, threading,277networking, signals, or other forms of inter-process communication (IPC), is278either not available or may not work as on other Unix-like systems. File I/O,279file system, and Unix permission-related functions are restricted, too.280Emscripten does not permit blocking I/O. Other blocking operations like281<a class="reference internal" href="time.html#time.sleep" title="time.sleep"><code class="xref py py-func docutils literal notranslate"><span class="pre">sleep()</span></code></a> block the browser event loop.</p>282<p>The properties and behavior of Python on WebAssembly platforms depend on the283<a class="reference external" href="https://emscripten.org/">Emscripten</a>-SDK or <a class="reference external" href="https://wasi.dev/">WASI</a>-SDK version, WASM runtimes (browser, NodeJS,284<a class="reference external" href="https://wasmtime.dev/">wasmtime</a>), and Python build time flags. WebAssembly, Emscripten, and WASI285are evolving standards; some features like networking may be286supported in the future.</p>287<p>For Python in the browser, users should consider <a class="reference external" href="https://pyodide.org/">Pyodide</a> or <a class="reference external" href="https://pyscript.net/">PyScript</a>.288PyScript is built on top of Pyodide, which itself is built on top of289CPython and Emscripten. Pyodide provides access to browsers’ JavaScript and290DOM APIs as well as limited networking capabilities with JavaScript’s291<code class="docutils literal notranslate"><span class="pre">XMLHttpRequest</span></code> and <code class="docutils literal notranslate"><span class="pre">Fetch</span></code> APIs.</p>292<ul class="simple">293<li><p>Process-related APIs are not available or always fail with an error. That294includes APIs that spawn new processes (<a class="reference internal" href="os.html#os.fork" title="os.fork"><code class="xref py py-func docutils literal notranslate"><span class="pre">fork()</span></code></a>,295<a class="reference internal" href="os.html#os.execve" title="os.execve"><code class="xref py py-func docutils literal notranslate"><span class="pre">execve()</span></code></a>), wait for processes (<a class="reference internal" href="os.html#os.waitpid" title="os.waitpid"><code class="xref py py-func docutils literal notranslate"><span class="pre">waitpid()</span></code></a>), send signals296(<a class="reference internal" href="os.html#os.kill" title="os.kill"><code class="xref py py-func docutils literal notranslate"><span class="pre">kill()</span></code></a>), or otherwise interact with processes. The297<a class="reference internal" href="subprocess.html#module-subprocess" title="subprocess: Subprocess management."><code class="xref py py-mod docutils literal notranslate"><span class="pre">subprocess</span></code></a> is importable but does not work.</p></li>298<li><p>The <a class="reference internal" href="socket.html#module-socket" title="socket: Low-level networking interface."><code class="xref py py-mod docutils literal notranslate"><span class="pre">socket</span></code></a> module is available, but is limited and behaves299differently from other platforms. On Emscripten, sockets are always300non-blocking and require additional JavaScript code and helpers on the301server to proxy TCP through WebSockets; see <a class="reference external" href="https://emscripten.org/docs/porting/networking.html">Emscripten Networking</a>302for more information. WASI snapshot preview 1 only permits sockets from an303existing file descriptor.</p></li>304<li><p>Some functions are stubs that either don’t do anything and always return305hardcoded values.</p></li>306<li><p>Functions related to file descriptors, file permissions, file ownership, and307links are limited and don’t support some operations. For example, WASI does308not permit symlinks with absolute file names.</p></li>309</ul>310</section>311<section id="mobile-platforms">312<span id="ios-availability"></span><span id="mobile-availability"></span><h3>Mobile platforms<a class="headerlink" href="#mobile-platforms" title="Link to this heading">¶</a></h3>313<p>Android and iOS are, in most respects, POSIX operating systems. File I/O, socket handling,314and threading all behave as they would on any POSIX operating system. However,315there are several major differences:</p>316<ul>317<li><p>Mobile platforms can only use Python in “embedded” mode. There is no Python318REPL, and no ability to use separate executables such as <strong class="program">python</strong> or319<strong class="program">pip</strong>. To add Python code to your mobile app, you must use320the <a class="reference internal" href="../extending/embedding.html#embedding"><span class="std std-ref">Python embedding API</span></a>. For more details, see321<a class="reference internal" href="../using/android.html#using-android"><span class="std std-ref">Using Python on Android</span></a> and <a class="reference internal" href="../using/ios.html#using-ios"><span class="std std-ref">Using Python on iOS</span></a>.</p></li>322<li><p>Subprocesses:</p>323<ul class="simple">324<li><p>On Android, creating subprocesses is possible but <a class="reference external" href="https://issuetracker.google.com/issues/128554619#comment4">officially unsupported</a>.325In particular, Android does not support any part of the System V IPC API,326so <a class="reference internal" href="multiprocessing.html#module-multiprocessing" title="multiprocessing: Process-based parallelism."><code class="xref py py-mod docutils literal notranslate"><span class="pre">multiprocessing</span></code></a> is not available.</p></li>327<li><p>An iOS app cannot use any form of subprocessing, multiprocessing, or328inter-process communication. If an iOS app attempts to create a subprocess,329the process creating the subprocess will either lock up, or crash. An iOS app330has no visibility of other applications that are running, nor any ability to331communicate with other running applications, outside of the iOS-specific APIs332that exist for this purpose.</p></li>333</ul>334</li>335<li><p>Mobile apps have limited access to modify system resources (such as the system336clock). These resources will often be <em>readable</em>, but attempts to modify337those resources will usually fail.</p></li>338<li><p>Console input and output:</p>339<ul>340<li><p>On Android, the native <code class="docutils literal notranslate"><span class="pre">stdout</span></code> and <code class="docutils literal notranslate"><span class="pre">stderr</span></code> are not connected to341anything, so Python installs its own streams which redirect messages to the342system log. These can be seen under the tags <code class="docutils literal notranslate"><span class="pre">python.stdout</span></code> and343<code class="docutils literal notranslate"><span class="pre">python.stderr</span></code> respectively.</p></li>344<li><p>iOS apps have a limited concept of console output. <code class="docutils literal notranslate"><span class="pre">stdout</span></code> and345<code class="docutils literal notranslate"><span class="pre">stderr</span></code> <em>exist</em>, and content written to <code class="docutils literal notranslate"><span class="pre">stdout</span></code> and <code class="docutils literal notranslate"><span class="pre">stderr</span></code> will be346visible in logs when running in Xcode, but this content <em>won’t</em> be recorded347in the system log. If a user who has installed your app provides their app348logs as a diagnostic aid, they will not include any detail written to349<code class="docutils literal notranslate"><span class="pre">stdout</span></code> or <code class="docutils literal notranslate"><span class="pre">stderr</span></code>.</p></li>350<li><p>Mobile apps have no usable <code class="docutils literal notranslate"><span class="pre">stdin</span></code> at all. While apps can display an on-screen351keyboard, this is a software feature, not something that is attached to352<code class="docutils literal notranslate"><span class="pre">stdin</span></code>.</p>353<p>As a result, Python modules that involve console manipulation (such as354<a class="reference internal" href="curses.html#module-curses" title="curses: An interface to the curses library, providing portable terminal handling."><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses</span></code></a> and <a class="reference internal" href="readline.html#module-readline" title="readline: GNU readline support for Python."><code class="xref py py-mod docutils literal notranslate"><span class="pre">readline</span></code></a>) are not available on mobile platforms.</p>355</li>356</ul>357</li>358</ul>359</section>360</section>361</section>362 363 364 <div class="clearer"></div>365 </div>366 </div>367 </div>368 <div class="sphinxsidebar" role="navigation" aria-label="Main">369 <div class="sphinxsidebarwrapper">370 <div>371 <h3><a href="../contents.html">Table of Contents</a></h3>372 <ul>373<li><a class="reference internal" href="#">Introduction</a><ul>374<li><a class="reference internal" href="#notes-on-availability">Notes on availability</a><ul>375<li><a class="reference internal" href="#webassembly-platforms">WebAssembly platforms</a></li>376<li><a class="reference internal" href="#mobile-platforms">Mobile platforms</a></li>377</ul>378</li>379</ul>380</li>381</ul>382 383 </div>384 <div>385 <h4>Previous topic</h4>386 <p class="topless"><a href="index.html"387 title="previous chapter">The Python Standard Library</a></p>388 </div>389 <div>390 <h4>Next topic</h4>391 <p class="topless"><a href="functions.html"392 title="next chapter">Built-in Functions</a></p>393 </div>394 <script>395 document.addEventListener('DOMContentLoaded', () => {396 const title = document.querySelector('meta[property="og:title"]').content;397 const elements = document.querySelectorAll('.improvepage');398 const pageurl = window.location.href.split('?')[0];399 elements.forEach(element => {400 const url = new URL(element.href.split('?')[0].replace("-nojs", ""));401 url.searchParams.set('pagetitle', title);402 url.searchParams.set('pageurl', pageurl);403 url.searchParams.set('pagesource', "library/intro.rst");404 element.href = url.toString();405 });406 });407 </script>408 <div role="note" aria-label="source link">409 <h3>This page</h3>410 <ul class="this-page-menu">411 <li><a href="../bugs.html">Report a bug</a></li>412 <li><a class="improvepage" href="../improve-page-nojs.html">Improve this page</a></li>413 <li>414 <a href="https://github.com/python/cpython/blob/main/Doc/library/intro.rst?plain=1"415 rel="nofollow">Show source416 </a>417 </li>418 419 </ul>420 </div>421 </div>422<div id="sidebarbutton" title="Collapse sidebar">423<span>«</span>424</div>425 426 </div>427 <div class="clearer"></div>428 </div> 429 <div class="related" role="navigation" aria-label="Related">430 <h3>Navigation</h3>431 <ul>432 <li class="right" style="margin-right: 10px">433 <a href="../genindex.html" title="General Index"434 >index</a></li>435 <li class="right" >436 <a href="../py-modindex.html" title="Python Module Index"437 >modules</a> |</li>438 <li class="right" >439 <a href="functions.html" title="Built-in Functions"440 >next</a> |</li>441 <li class="right" >442 <a href="index.html" title="The Python Standard Library"443 >previous</a> |</li>444 445 <li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"></li>446 <li><a href="https://www.python.org/">Python</a> »</li>447 <li class="switchers">448 <div class="language_switcher_placeholder"></div>449 <div class="version_switcher_placeholder"></div>450 </li>451 <li>452 453 </li>454 <li id="cpython-language-and-version">455 <a href="../index.html">3.15.0a6 Documentation</a> »456 </li>457 458 <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> »</li>459 <li class="nav-item nav-item-this"><a href="">Introduction</a></li>460 <li class="right">461 462 463 <div class="inline-search" role="search">464 <form class="inline-search" action="../search.html" method="get">465 <input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box">466 <input type="submit" value="Go">467 </form>468 </div>469 |470 </li>471 <li class="right">472<label class="theme-selector-label">473 Theme474 <select class="theme-selector" oninput="activateTheme(this.value)">475 <option value="auto" selected>Auto</option>476 <option value="light">Light</option>477 <option value="dark">Dark</option>478 </select>479</label> |</li>480 481 </ul>482 </div> 483 <div class="footer">484 © <a href="../copyright.html">Copyright</a> 2001 Python Software Foundation.485 <br>486 This page is licensed under the Python Software Foundation License Version 2.487 <br>488 Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.489 <br>490 491 See <a href="/license.html">History and License</a> for more information.<br>492 493 494 <br>495 496 The Python Software Foundation is a non-profit corporation.497<a href="https://www.python.org/psf/donations/">Please donate.</a>498<br>499 <br>500 Last updated on Mar 10, 2026 (08:58 UTC).501 502 <a href="/bugs.html">Found a bug</a>?503 504 <br>505 506 Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.507 </div>508 509 </body>510</html>