Files
Plugin/Handbook/dist/winpython/python-3.12.4.amd64/Doc/html/library/frameworks.html
T

479 lines
24 KiBLFS
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" data-content_root="../">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta property="og:title" content="Program Frameworks" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://docs.python.org/3/library/frameworks.html" />
<meta property="og:site_name" content="Python documentation" />
<meta property="og:description" content="The modules described in this chapter are frameworks that will largely dictate the structure of your program. Currently the modules described here are all oriented toward writing command-line inter..." />
<meta property="og:image" content="https://docs.python.org/3/_static/og-image.png" />
<meta property="og:image:alt" content="Python documentation" />
<meta name="description" content="The modules described in this chapter are frameworks that will largely dictate the structure of your program. Currently the modules described here are all oriented toward writing command-line inter..." />
<meta property="og:image:width" content="200" />
<meta property="og:image:height" content="200" />
<meta name="theme-color" content="#3776ab" />
<title>Program Frameworks &#8212; Python 3.12.4 documentation</title><meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=80d5e7a1" />
<link rel="stylesheet" type="text/css" href="../_static/pydoctheme.css?v=bb723527" />
<link id="pygments_dark_css" media="(prefers-color-scheme: dark)" rel="stylesheet" type="text/css" href="../_static/pygments_dark.css?v=b20cc3f5" />
<script src="../_static/documentation_options.js?v=e70b10b9"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/sidebar.js"></script>
<link rel="search" type="application/opensearchdescription+xml"
title="Search within Python 3.12.4 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="turtle — Turtle graphics" href="turtle.html" />
<link rel="prev" title="locale — Internationalization services" href="locale.html" />
<link rel="canonical" href="https://docs.python.org/3/library/frameworks.html" />
<style>
@media only screen {
table.full-width-table {
width: 100%;
}
}
</style>
<link rel="stylesheet" href="../_static/pydoctheme_dark.css" media="(prefers-color-scheme: dark)" id="pydoctheme_dark_css">
<link rel="shortcut icon" type="image/png" href="../_static/py.svg" />
<script type="text/javascript" src="../_static/copybutton.js"></script>
<script type="text/javascript" src="../_static/menu.js"></script>
<script type="text/javascript" src="../_static/search-focus.js"></script>
<script type="text/javascript" src="../_static/themetoggle.js"></script>
<meta name="readthedocs-addons-api-version" content="1">
<script type="text/javascript">
function onSwitch(event) {
const option = event.target.selectedIndex;
const item = event.target.options[option];
window.location.href = item.dataset.url;
}
document.addEventListener("readthedocs-addons-data-ready", function(event) {
const config = event.detail.data()
// Add some mocked hardcoded versions pointing to the official
// documentation while migrating to Read the Docs.
// These are only for testing purposes.
// TODO: remove them when managing all the versions on Read the Docs,
// since all the "active, built and not hidden" versions will be shown automatically.
let versions = config.versions.active.concat([
{
slug: "dev (3.13)",
urls: {
documentation: "https://docs.python.org/3.13/",
}
},
{
slug: "3.12",
urls: {
documentation: "https://docs.python.org/3.12/",
}
},
{
slug: "3.11",
urls: {
documentation: "https://docs.python.org/3.11/",
}
},
]);
const versionSelect = `
<select id="version_select">
${ versions.map(
(version) => `
<option
value="${ version.slug }"
${ config.versions.current.slug === version.slug ? 'selected="selected"' : '' }
data-url="${ version.urls.documentation }">
${ version.slug }
</option>`
).join("\n") }
</select>
`;
// Prepend the current language to the options on the selector
let languages = config.projects.translations.concat(config.projects.current);
languages = languages.sort((a, b) => a.language.name.localeCompare(b.language.name));
const languageSelect = `
<select id="language_select">
${ languages.map(
(translation) => `
<option
value="${ translation.slug }"
${ config.projects.current.slug === translation.slug ? 'selected="selected"' : '' }
data-url="${ translation.urls.documentation }">
${ translation.language.name }
</option>`
).join("\n") }
</select>
`;
// Query all the placeholders because there are different ones for Desktop/Mobile
const versionPlaceholders = document.querySelectorAll(".version_switcher_placeholder");
for (placeholder of versionPlaceholders) {
placeholder.innerHTML = versionSelect;
let selectElement = placeholder.querySelector("select");
selectElement.addEventListener("change", onSwitch);
}
const languagePlaceholders = document.querySelectorAll(".language_switcher_placeholder");
for (placeholder of languagePlaceholders) {
placeholder.innerHTML = languageSelect;
let selectElement = placeholder.querySelector("select");
selectElement.addEventListener("change", onSwitch);
}
});
</script>
</head>
<body>
<div class="mobile-nav">
<input type="checkbox" id="menuToggler" class="toggler__input" aria-controls="navigation"
aria-pressed="false" aria-expanded="false" role="button" aria-label="Menu" />
<nav class="nav-content" role="navigation">
<label for="menuToggler" class="toggler__label">
<span></span>
</label>
<span class="nav-items-wrapper">
<a href="https://www.python.org/" class="nav-logo">
<img src="../_static/py.svg" alt="Python logo"/>
</a>
<span class="version_switcher_placeholder"></span>
<form role="search" class="search" action="../search.html" method="get">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" class="search-icon">
<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>
</svg>
<input placeholder="Quick search" aria-label="Quick search" type="search" name="q" />
<input type="submit" value="Go"/>
</form>
</span>
</nav>
<div class="menu-wrapper">
<nav class="menu" role="navigation" aria-label="main navigation">
<div class="language_switcher_placeholder"></div>
<label class="theme-selector-label">
Theme
<select class="theme-selector" oninput="activateTheme(this.value)">
<option value="auto" selected>Auto</option>
<option value="light">Light</option>
<option value="dark">Dark</option>
</select>
</label>
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="locale.html"
title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">locale</span></code> — Internationalization services</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="turtle.html"
title="next chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">turtle</span></code> — Turtle graphics</a></p>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">Report a Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/main/Doc/library/frameworks.rst"
rel="nofollow">Show Source
</a>
</li>
</ul>
</div>
</nav>
</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"
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="turtle.html" title="turtle — Turtle graphics"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="locale.html" title="locale — Internationalization services"
accesskey="P">previous</a> |</li>
<li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li class="switchers">
<div class="language_switcher_placeholder"></div>
<div class="version_switcher_placeholder"></div>
</li>
<li>
</li>
<li id="cpython-language-and-version">
<a href="../index.html">3.12.4 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">The Python Standard Library</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Program Frameworks</a></li>
<li class="right">
<div class="inline-search" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box" />
<input type="submit" value="Go" />
</form>
</div>
|
</li>
<li class="right">
<label class="theme-selector-label">
Theme
<select class="theme-selector" oninput="activateTheme(this.value)">
<option value="auto" selected>Auto</option>
<option value="light">Light</option>
<option value="dark">Dark</option>
</select>
</label> |</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="program-frameworks">
<span id="frameworks"></span><h1>Program Frameworks<a class="headerlink" href="#program-frameworks" title="Link to this heading"></a></h1>
<p>The modules described in this chapter are frameworks that will largely dictate
the structure of your program. Currently the modules described here are all
oriented toward writing command-line interfaces.</p>
<p>The full list of modules described in this chapter is:</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="turtle.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">turtle</span></code> — Turtle graphics</a><ul>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#tutorial">Tutorial</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#starting-a-turtle-environment">Starting a turtle environment</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#basic-drawing">Basic drawing</a><ul>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#pen-control">Pen control</a></li>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#the-turtle-s-position">The turtles position</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#making-algorithmic-patterns">Making algorithmic patterns</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#how-to">How to…</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#get-started-as-quickly-as-possible">Get started as quickly as possible</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#use-the-turtle-module-namespace">Use the <code class="docutils literal notranslate"><span class="pre">turtle</span></code> module namespace</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#use-turtle-graphics-in-a-script">Use turtle graphics in a script</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#use-object-oriented-turtle-graphics">Use object-oriented turtle graphics</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#turtle-graphics-reference">Turtle graphics reference</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#turtle-methods">Turtle methods</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#methods-of-turtlescreen-screen">Methods of TurtleScreen/Screen</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#methods-of-rawturtle-turtle-and-corresponding-functions">Methods of RawTurtle/Turtle and corresponding functions</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#turtle-motion">Turtle motion</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#tell-turtle-s-state">Tell Turtles state</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#settings-for-measurement">Settings for measurement</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#id1">Pen control</a><ul>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#drawing-state">Drawing state</a></li>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#color-control">Color control</a></li>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#filling">Filling</a></li>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#more-drawing-control">More drawing control</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#turtle-state">Turtle state</a><ul>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#visibility">Visibility</a></li>
<li class="toctree-l4"><a class="reference internal" href="turtle.html#appearance">Appearance</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#using-events">Using events</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#special-turtle-methods">Special Turtle methods</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#compound-shapes">Compound shapes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#methods-of-turtlescreen-screen-and-corresponding-functions">Methods of TurtleScreen/Screen and corresponding functions</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#window-control">Window control</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#animation-control">Animation control</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#using-screen-events">Using screen events</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#input-methods">Input methods</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#settings-and-special-methods">Settings and special methods</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#methods-specific-to-screen-not-inherited-from-turtlescreen">Methods specific to Screen, not inherited from TurtleScreen</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#public-classes">Public classes</a></li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#explanation">Explanation</a></li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#help-and-configuration">Help and configuration</a><ul>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#how-to-use-help">How to use help</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#translation-of-docstrings-into-different-languages">Translation of docstrings into different languages</a></li>
<li class="toctree-l3"><a class="reference internal" href="turtle.html#how-to-configure-screen-and-turtles">How to configure Screen and Turtles</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#module-turtledemo"><code class="xref py py-mod docutils literal notranslate"><span class="pre">turtledemo</span></code> — Demo scripts</a></li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#changes-since-python-2-6">Changes since Python 2.6</a></li>
<li class="toctree-l2"><a class="reference internal" href="turtle.html#changes-since-python-3-0">Changes since Python 3.0</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="cmd.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">cmd</span></code> — Support for line-oriented command interpreters</a><ul>
<li class="toctree-l2"><a class="reference internal" href="cmd.html#cmd-objects">Cmd Objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="cmd.html#cmd-example">Cmd Example</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="shlex.html"><code class="xref py py-mod docutils literal notranslate"><span class="pre">shlex</span></code> — Simple lexical analysis</a><ul>
<li class="toctree-l2"><a class="reference internal" href="shlex.html#shlex-objects">shlex Objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="shlex.html#parsing-rules">Parsing Rules</a></li>
<li class="toctree-l2"><a class="reference internal" href="shlex.html#improved-compatibility-with-shells">Improved Compatibility with Shells</a></li>
</ul>
</li>
</ul>
</div>
</section>
<div class="clearer"></div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="locale.html"
title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">locale</span></code> — Internationalization services</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="turtle.html"
title="next chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">turtle</span></code> — Turtle graphics</a></p>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">Report a Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/main/Doc/library/frameworks.rst"
rel="nofollow">Show Source
</a>
</li>
</ul>
</div>
</div>
<div id="sidebarbutton" title="Collapse sidebar">
<span>«</span>
</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="turtle.html" title="turtle — Turtle graphics"
>next</a> |</li>
<li class="right" >
<a href="locale.html" title="locale — Internationalization services"
>previous</a> |</li>
<li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li class="switchers">
<div class="language_switcher_placeholder"></div>
<div class="version_switcher_placeholder"></div>
</li>
<li>
</li>
<li id="cpython-language-and-version">
<a href="../index.html">3.12.4 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Program Frameworks</a></li>
<li class="right">
<div class="inline-search" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box" />
<input type="submit" value="Go" />
</form>
</div>
|
</li>
<li class="right">
<label class="theme-selector-label">
Theme
<select class="theme-selector" oninput="activateTheme(this.value)">
<option value="auto" selected>Auto</option>
<option value="light">Light</option>
<option value="dark">Dark</option>
</select>
</label> |</li>
</ul>
</div>
<div class="footer">
&copy;
<a href="../copyright.html">
Copyright
</a>
2001-2024, Python Software Foundation.
<br />
This page is licensed under the Python Software Foundation License Version 2.
<br />
Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.
<br />
See <a href="/license.html">History and License</a> for more information.<br />
<br />
The Python Software Foundation is a non-profit corporation.
<a href="https://www.python.org/psf/donations/">Please donate.</a>
<br />
<br />
Last updated on Jun 06, 2024 (19:11 UTC).
<a href="/bugs.html">Found a bug</a>?
<br />
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 7.3.7.
</div>
</body>
</html>