Files
hustoj/web/python-docs/c-api/bytearray.html
2025-03-09 17:10:56 +08:00

356 lines
19 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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 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>字节数组对象 &#8212; 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="Unicode对象和编解码器" href="unicode.html" />
<link rel="prev" title="bytes 对象" href="bytes.html" />
<link rel="canonical" href="https://docs.python.org/3/c-api/bytearray.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>
<h3><a href="../contents.html">目录</a></h3>
<ul>
<li><a class="reference internal" href="#">字节数组对象</a><ul>
<li><a class="reference internal" href="#type-check-macros">类型检查宏</a></li>
<li><a class="reference internal" href="#direct-api-functions">直接 API 函数</a></li>
<li><a class="reference internal" href="#macros"></a></li>
</ul>
</li>
</ul>
<h4>上一个主题</h4>
<p class="topless"><a href="bytes.html"
title="上一章">bytes 对象</a></p>
<h4>下一个主题</h4>
<p class="topless"><a href="unicode.html"
title="下一章">Unicode对象和编解码器</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/bytearray.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/bytearray.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="unicode.html" title="Unicode对象和编解码器"
accesskey="N">下一页</a> |</li>
<li class="right" >
<a href="bytes.html" title="bytes 对象"
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> &#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.8.20 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python/C API 参考手册</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="concrete.html" accesskey="U">具体的对象层</a> &#187;</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="byte-array-objects">
<span id="bytearrayobjects"></span><h1>字节数组对象<a class="headerlink" href="#byte-array-objects" title="永久链接至标题"></a></h1>
<span class="target" id="index-0"></span><dl class="type">
<dt id="c.PyByteArrayObject">
<code class="sig-name descname">PyByteArrayObject</code><a class="headerlink" href="#c.PyByteArrayObject" title="永久链接至目标"></a></dt>
<dd><p>这个 <a class="reference internal" href="structures.html#c.PyObject" title="PyObject"><code class="xref c c-type docutils literal notranslate"><span class="pre">PyObject</span></code></a> 的子类型表示一个 Python 字节数组对象。</p>
</dd></dl>
<dl class="var">
<dt id="c.PyByteArray_Type">
<a class="reference internal" href="type.html#c.PyTypeObject" title="PyTypeObject">PyTypeObject</a> <code class="sig-name descname">PyByteArray_Type</code><a class="headerlink" href="#c.PyByteArray_Type" title="永久链接至目标"></a></dt>
<dd><p>Python bytearray 类型表示为 <a class="reference internal" href="type.html#c.PyTypeObject" title="PyTypeObject"><code class="xref c c-type docutils literal notranslate"><span class="pre">PyTypeObject</span></code></a> 的实例这与Python层面的 <a class="reference internal" href="../library/stdtypes.html#bytearray" title="bytearray"><code class="xref py py-class docutils literal notranslate"><span class="pre">bytearray</span></code></a> 是相同的对象。</p>
</dd></dl>
<section id="type-check-macros">
<h2>类型检查宏<a class="headerlink" href="#type-check-macros" title="永久链接至标题"></a></h2>
<dl class="function">
<dt id="c.PyByteArray_Check">
int <code class="sig-name descname">PyByteArray_Check</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *o</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_Check" title="永久链接至目标"></a></dt>
<dd><p>当对象 <em>o</em> 是一个字节数组对象而且是一个字节数组类型的子类型实例时,返回真。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_CheckExact">
int <code class="sig-name descname">PyByteArray_CheckExact</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *o</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_CheckExact" title="永久链接至目标"></a></dt>
<dd><p>当对象 <em>o</em> 是一个字节数组对象,但不是一个字节数组类型的子类型实例时,返回真。</p>
</dd></dl>
</section>
<section id="direct-api-functions">
<h2>直接 API 函数<a class="headerlink" href="#direct-api-functions" title="永久链接至标题"></a></h2>
<dl class="function">
<dt id="c.PyByteArray_FromObject">
<a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a>* <code class="sig-name descname">PyByteArray_FromObject</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *o</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_FromObject" title="永久链接至目标"></a></dt>
<dd><em class="refcount">Return value: New reference.</em><p>根据任何实现了 <a class="reference internal" href="buffer.html#bufferobjects"><span class="std std-ref">缓冲区协议</span></a> 的对象 <em>o</em>,返回一个新的字节数组对象。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_FromStringAndSize">
<a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a>* <code class="sig-name descname">PyByteArray_FromStringAndSize</code><span class="sig-paren">(</span>const char<em> *string</em>, Py_ssize_t<em> len</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_FromStringAndSize" title="永久链接至目标"></a></dt>
<dd><em class="refcount">Return value: New reference.</em><p>根据 <em>string</em> 及其长度 <em>len</em> 创建一个新的 bytearray 对象。 当失败时返回 <code class="docutils literal notranslate"><span class="pre">NULL</span></code></p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_Concat">
<a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a>* <code class="sig-name descname">PyByteArray_Concat</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *a</em>, <a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *b</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_Concat" title="永久链接至目标"></a></dt>
<dd><em class="refcount">Return value: New reference.</em><p>连接字节数组 <em>a</em><em>b</em> 并返回一个带有结果的新的字节数组。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_Size">
Py_ssize_t <code class="sig-name descname">PyByteArray_Size</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *bytearray</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_Size" title="永久链接至目标"></a></dt>
<dd><p>在检查 <code class="docutils literal notranslate"><span class="pre">NULL</span></code> 指针后返回 <em>bytearray</em> 的大小。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_AsString">
char* <code class="sig-name descname">PyByteArray_AsString</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *bytearray</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_AsString" title="永久链接至目标"></a></dt>
<dd><p>在检查 <code class="docutils literal notranslate"><span class="pre">NULL</span></code> 指针后返回将 <em>bytearray</em> 返回为一个字符数组。 返回的数组总是会附加一个额外的空字节。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_Resize">
int <code class="sig-name descname">PyByteArray_Resize</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *bytearray</em>, Py_ssize_t<em> len</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_Resize" title="永久链接至目标"></a></dt>
<dd><p><em>bytearray</em> 的内部缓冲区的大小调整为 <em>len</em></p>
</dd></dl>
</section>
<section id="macros">
<h2><a class="headerlink" href="#macros" title="永久链接至标题"></a></h2>
<p>这些宏减低安全性以换取性能,它们不检查指针。</p>
<dl class="function">
<dt id="c.PyByteArray_AS_STRING">
char* <code class="sig-name descname">PyByteArray_AS_STRING</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *bytearray</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_AS_STRING" title="永久链接至目标"></a></dt>
<dd><p>C函数 <a class="reference internal" href="#c.PyByteArray_AsString" title="PyByteArray_AsString"><code class="xref c c-func docutils literal notranslate"><span class="pre">PyByteArray_AsString()</span></code></a> 的宏版本。</p>
</dd></dl>
<dl class="function">
<dt id="c.PyByteArray_GET_SIZE">
Py_ssize_t <code class="sig-name descname">PyByteArray_GET_SIZE</code><span class="sig-paren">(</span><a class="reference internal" href="structures.html#c.PyObject" title="PyObject">PyObject</a><em> *bytearray</em><span class="sig-paren">)</span><a class="headerlink" href="#c.PyByteArray_GET_SIZE" title="永久链接至目标"></a></dt>
<dd><p>C函数 <a class="reference internal" href="#c.PyByteArray_Size" title="PyByteArray_Size"><code class="xref c c-func docutils literal notranslate"><span class="pre">PyByteArray_Size()</span></code></a> 的宏版本。</p>
</dd></dl>
</section>
</section>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3><a href="../contents.html">目录</a></h3>
<ul>
<li><a class="reference internal" href="#">字节数组对象</a><ul>
<li><a class="reference internal" href="#type-check-macros">类型检查宏</a></li>
<li><a class="reference internal" href="#direct-api-functions">直接 API 函数</a></li>
<li><a class="reference internal" href="#macros"></a></li>
</ul>
</li>
</ul>
<h4>上一个主题</h4>
<p class="topless"><a href="bytes.html"
title="上一章">bytes 对象</a></p>
<h4>下一个主题</h4>
<p class="topless"><a href="unicode.html"
title="下一章">Unicode对象和编解码器</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/bytearray.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="unicode.html" title="Unicode对象和编解码器"
>下一页</a> |</li>
<li class="right" >
<a href="bytes.html" title="bytes 对象"
>上一页</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.8.20 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python/C API 参考手册</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="concrete.html" >具体的对象层</a> &#187;</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">
&copy; <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>