367 lines
21 KiB
HTML
367 lines
21 KiB
HTML
|
|
<!DOCTYPE html>
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh_CN">
|
|
<head>
|
|
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
|
|
|
<title>Python/C API 参考手册 — Python 3.8.20 文档</title><meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
<link rel="stylesheet" href="../_static/pydoctheme.css" type="text/css" />
|
|
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
|
|
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
|
|
<script src="../_static/jquery.js"></script>
|
|
<script src="../_static/underscore.js"></script>
|
|
<script src="../_static/doctools.js"></script>
|
|
<script src="../_static/language_data.js"></script>
|
|
<script src="../_static/translations.js"></script>
|
|
|
|
<script src="../_static/sidebar.js"></script>
|
|
|
|
<link rel="search" type="application/opensearchdescription+xml"
|
|
title="在 Python 3.8.20 文档 中搜索"
|
|
href="../_static/opensearch.xml"/>
|
|
<link rel="author" title="关于这些文档" href="../about.html" />
|
|
<link rel="index" title="索引" href="../genindex.html" />
|
|
<link rel="search" title="搜索" href="../search.html" />
|
|
<link rel="copyright" title="版权所有" href="../copyright.html" />
|
|
<link rel="next" title="概述" href="intro.html" />
|
|
<link rel="prev" title="1. 在其它应用程序嵌入 Python" href="../extending/embedding.html" />
|
|
<link rel="canonical" href="https://docs.python.org/3/c-api/index.html" />
|
|
|
|
|
|
|
|
|
|
|
|
<style>
|
|
@media only screen {
|
|
table.full-width-table {
|
|
width: 100%;
|
|
}
|
|
}
|
|
</style>
|
|
<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>
|
|
|
|
</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" />
|
|
<label for="menuToggler" class="toggler__label">
|
|
<span></span>
|
|
</label>
|
|
<nav class="nav-content" role="navigation">
|
|
<a href="https://www.python.org/" class="nav-logo">
|
|
<img src="../_static/py.svg" alt="Logo"/>
|
|
</a>
|
|
<div class="version_switcher_placeholder"></div>
|
|
<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"
|
|
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" fill="#444"></path>
|
|
</svg>
|
|
<input type="text" name="q" aria-label="快速搜索"/>
|
|
<input type="submit" value="转向"/>
|
|
</form>
|
|
</nav>
|
|
<div class="menu-wrapper">
|
|
<nav class="menu" role="navigation" aria-label="main navigation">
|
|
<div class="language_switcher_placeholder"></div>
|
|
<h4>上一个主题</h4>
|
|
<p class="topless"><a href="../extending/embedding.html"
|
|
title="上一章"><span class="section-number">1. </span>在其它应用程序嵌入 Python</a></p>
|
|
<h4>下一个主题</h4>
|
|
<p class="topless"><a href="intro.html"
|
|
title="下一章">概述</a></p>
|
|
<div role="note" aria-label="source link">
|
|
<h3>本页</h3>
|
|
<ul class="this-page-menu">
|
|
<li><a href="../bugs.html">报告 Bug</a></li>
|
|
<li>
|
|
<a href="https://github.com/python/cpython/blob/3.8/Doc/c-api/index.rst"
|
|
rel="nofollow">显示源代码
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outdated-warning" style="padding: .5em; text-align: center; background-color: #FFBABA; color: #6A0E0E;">
|
|
这个文档所针对的是一个已不再受支持的 Python 旧版本。
|
|
你应当升级版本,并阅读
|
|
<a href="/3/c-api/index.html"> Python 当前稳定版本的文档</a>.
|
|
</div>
|
|
|
|
<div class="related" role="navigation" aria-label="related navigation">
|
|
<h3>导航</h3>
|
|
<ul>
|
|
<li class="right" style="margin-right: 10px">
|
|
<a href="../genindex.html" title="总目录"
|
|
accesskey="I">索引</a></li>
|
|
<li class="right" >
|
|
<a href="../py-modindex.html" title="Python 模块索引"
|
|
>模块</a> |</li>
|
|
<li class="right" >
|
|
<a href="intro.html" title="概述"
|
|
accesskey="N">下一页</a> |</li>
|
|
<li class="right" >
|
|
<a href="../extending/embedding.html" title="1. 在其它应用程序嵌入 Python"
|
|
accesskey="P">上一页</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> »</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.8.20 Documentation</a> »
|
|
</li>
|
|
|
|
<li class="right">
|
|
|
|
|
|
<div class="inline-search" role="search">
|
|
<form class="inline-search" action="../search.html" method="get">
|
|
<input placeholder="快速搜索" aria-label="快速搜索" type="text" name="q" />
|
|
<input type="submit" value="转向" />
|
|
<input type="hidden" name="check_keywords" value="yes" />
|
|
<input type="hidden" name="area" value="default" />
|
|
</form>
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="document">
|
|
<div class="documentwrapper">
|
|
<div class="bodywrapper">
|
|
<div class="body" role="main">
|
|
|
|
<section id="python-c-api-reference-manual">
|
|
<span id="c-api-index"></span><h1>Python/C API 参考手册<a class="headerlink" href="#python-c-api-reference-manual" title="永久链接至标题">¶</a></h1>
|
|
<p>本手册描述了希望编写扩展模块并将 Python 解释器嵌入其应用程序中的 C 和 C++ 程序员可用的 API。同时可以参阅 <a class="reference internal" href="../extending/index.html#extending-index"><span class="std std-ref">扩展和嵌入 Python 解释器</span></a> ,其中描述了扩展编写的一般原则,但没有详细描述 API 函数。</p>
|
|
<div class="toctree-wrapper compound">
|
|
<ul>
|
|
<li class="toctree-l1"><a class="reference internal" href="intro.html">概述</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#coding-standards">代码标准</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#include-files">包含文件</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#useful-macros">有用的宏</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#objects-types-and-reference-counts">对象、类型和引用计数</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#exceptions">异常</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#embedding-python">嵌入Python</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="intro.html#debugging-builds">调试构建</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="stable.html">稳定的应用程序二进制接口</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="veryhigh.html">极高层级 API</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="refcounting.html">引用计数</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="exceptions.html">异常处理</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#printing-and-clearing">打印和清理</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#raising-exceptions">抛出异常</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#issuing-warnings">发出警告</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#querying-the-error-indicator">查询错误指示器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#signal-handling">信号处理</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#exception-classes">Exception 类</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#exception-objects">异常对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#unicode-exception-objects">Unicode 异常对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#recursion-control">递归控制</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#standard-exceptions">标准异常</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="exceptions.html#standard-warning-categories">标准警告类别</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="utilities.html">工具</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="sys.html">操作系统实用工具</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="sys.html#system-functions">系统功能</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="sys.html#process-control">过程控制</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="import.html">导入模块</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="marshal.html">数据 marshal 操作支持</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="arg.html">解析参数并构建值变量</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="conversion.html">字符串转换与格式化</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="reflection.html">反射</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="codec.html">编解码器注册与支持功能</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="abstract.html">抽象对象层</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="object.html">对象协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="number.html">数字协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="sequence.html">序列协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="mapping.html">映射协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="iter.html">迭代器协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="buffer.html">缓冲协议</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="objbuffer.html">旧缓冲协议</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="concrete.html">具体的对象层</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#fundamental-objects">基本对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#numeric-objects">数值对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#sequence-objects">序列对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#container-objects">容器对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#function-objects">函数对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="concrete.html#other-objects">其他对象</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="init.html">初始化,最终化和线程</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#before-python-initialization">在Python初始化之前</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#global-configuration-variables">全局配置变量</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#initializing-and-finalizing-the-interpreter">初始化和最终化解释器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#process-wide-parameters">进程级参数</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#thread-state-and-the-global-interpreter-lock">线程状态和全局解释器锁</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#sub-interpreter-support">子解释器支持</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#asynchronous-notifications">异步通知</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#profiling-and-tracing">分析和跟踪</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#advanced-debugger-support">高级调试器支持</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init.html#thread-local-storage-support">线程本地存储支持</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="init_config.html">Python初始化配置</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#pywidestringlist">PyWideStringList</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#pystatus">PyStatus</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#pypreconfig">PyPreConfig</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#preinitialization-with-pypreconfig">Preinitialization with PyPreConfig</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#pyconfig">PyConfig</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#initialization-with-pyconfig">使用 PyConfig 初始化</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#isolated-configuration">隔离配置</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#python-configuration">Python 配置</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#path-configuration">路径配置</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#py-runmain">Py_RunMain()</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="init_config.html#multi-phase-initialization-private-provisional-api">多阶段初始化私有暂定 API</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="memory.html">内存管理</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#overview">概述</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#raw-memory-interface">原始内存接口</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#memory-interface">内存接口</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#object-allocators">对象分配器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#default-memory-allocators">默认内存分配器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#customize-memory-allocators">自定义内存分配器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#the-pymalloc-allocator">pymalloc 分配器</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#tracemalloc-c-api">tracemalloc C API</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="memory.html#examples">例子</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="objimpl.html">对象实现支持</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="allocation.html">在堆上分配对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="structures.html">公用对象的结构</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html">类型对象</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#number-object-structures">数字对象结构体</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#mapping-object-structures">映射对象结构体</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#sequence-object-structures">序列对象结构体</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#buffer-object-structures">缓冲区对象结构体</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#async-object-structures">异步对象结构体</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#slot-type-typedefs">槽位类型 typedef</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="typeobj.html#examples">例子</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="gcsupport.html">使对象类型支持循环垃圾回收</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="apiabiversion.html">API 和 ABI 版本管理</a></li>
|
|
</ul>
|
|
</div>
|
|
</section>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
|
<div class="sphinxsidebarwrapper">
|
|
<h4>上一个主题</h4>
|
|
<p class="topless"><a href="../extending/embedding.html"
|
|
title="上一章"><span class="section-number">1. </span>在其它应用程序嵌入 Python</a></p>
|
|
<h4>下一个主题</h4>
|
|
<p class="topless"><a href="intro.html"
|
|
title="下一章">概述</a></p>
|
|
<div role="note" aria-label="source link">
|
|
<h3>本页</h3>
|
|
<ul class="this-page-menu">
|
|
<li><a href="../bugs.html">报告 Bug</a></li>
|
|
<li>
|
|
<a href="https://github.com/python/cpython/blob/3.8/Doc/c-api/index.rst"
|
|
rel="nofollow">显示源代码
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="clearer"></div>
|
|
</div>
|
|
<div class="related" role="navigation" aria-label="related navigation">
|
|
<h3>导航</h3>
|
|
<ul>
|
|
<li class="right" style="margin-right: 10px">
|
|
<a href="../genindex.html" title="总目录"
|
|
>索引</a></li>
|
|
<li class="right" >
|
|
<a href="../py-modindex.html" title="Python 模块索引"
|
|
>模块</a> |</li>
|
|
<li class="right" >
|
|
<a href="intro.html" title="概述"
|
|
>下一页</a> |</li>
|
|
<li class="right" >
|
|
<a href="../extending/embedding.html" title="1. 在其它应用程序嵌入 Python"
|
|
>上一页</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> »</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.8.20 Documentation</a> »
|
|
</li>
|
|
|
|
<li class="right">
|
|
|
|
|
|
<div class="inline-search" role="search">
|
|
<form class="inline-search" action="../search.html" method="get">
|
|
<input placeholder="快速搜索" aria-label="快速搜索" type="text" name="q" />
|
|
<input type="submit" value="转向" />
|
|
<input type="hidden" name="check_keywords" value="yes" />
|
|
<input type="hidden" name="area" value="default" />
|
|
</form>
|
|
</div>
|
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</div>
|
|
<div class="footer">
|
|
© <a href="../copyright.html">版权所有</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 />
|
|
|
|
<br />
|
|
|
|
The Python Software Foundation is a non-profit corporation.
|
|
<a href="https://www.python.org/psf/donations/">Please donate.</a>
|
|
<br />
|
|
<br />
|
|
|
|
最后更新于 12月 09, 2024.
|
|
<a href="https://docs.python.org/3/bugs.html">Found a bug</a>?
|
|
<br />
|
|
|
|
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 2.4.4.
|
|
</div>
|
|
|
|
</body>
|
|
</html> |