<p><a href="https://docs.python.org/3/library/functions.html?highlight=open#open" rel="nofollow noreferrer">^{<cd1>} function</a>的签名是:</p>
<pre><code>open(file, mode=’r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
</code></pre>
<p>如果以“a”(append)模式打开,则意味着:openforwriting,如果文件存在,则追加到文件末尾。没有什么关于缓冲的。在</p>
<p>可以使用<em>Buffering</em>参数自定义缓冲。引用文件:</p>
<blockquote>
<p><em>buffering</em> is an optional integer used to set the buffering policy. Pass 0 to switch buffering off (only allowed in binary mode), 1 to select line buffering (only usable in text mode), and an integer > 1 to indicate the size in bytes of a fixed-size chunk buffer. When no buffering argument is given, the default buffering policy works as follows:</p>
<ul>
<li>Binary files are buffered in fixed-size chunks; the size of the buffer is chosen using a heuristic trying to determine the underlying device’s “block size” and falling back on io.DEFAULT_BUFFER_SIZE. On many systems, the buffer will typically be 4096 or 8192 bytes long.</li>
<li>“Interactive” text files (files for which isatty() returns True) use line buffering. Other text files use the policy described above for binary files.</li>
</ul>
</blockquote>
<p>在您的示例中,您的文件以文本模式打开以进行追加。在</p>
<p>所以,在编写过程中,只有一大块数据存储在RAM中。如果你写一个“大”数据,它将被分成几个块。在</p>