擅长:python、mysql、java
<p>打开文件时没有指定编码,因此<code>outfile.encoding</code>可能是<code>None</code>。在</p>
<blockquote>
<p><strong>file.encoding</strong></p>
<p>The encoding that this file uses. When Unicode strings
are written to a file, they will be converted to byte strings using
this encoding. In addition, when the file is connected to a terminal,
the attribute gives the encoding that the terminal is likely to use
(that information might be incorrect if the user has misconfigured the
terminal). The attribute is read-only and may not be present on all
file-like objects. <em>It may also be None, in which case the file uses
the system default encoding for converting Unicode strings.</em></p>
</blockquote>
<p>你的系统默认编码显然是ascii。在</p>
<p>相反,请使用所需的编码打开文件:</p>
<pre><code>import codecs
with codecs.open("test.json", "w", encoding='utf-8') as outfile:
</code></pre>