擅长:python、mysql、java
<p>这是可行的,因为您将字节解码为unicode:</p>
<pre><code>'\xc4\xe3\xba\xc3'.decode('gbk')
</code></pre>
<p>这不是,因为您正在尝试编码字节(已经编码):</p>
^{pr2}$
<p>Python 2中的错误消息在这里没有帮助,但是您应该只对unicode字符串使用encode:</p>
<pre><code>u'\u4f60\u597d'.encode('gbk') # Gets you back the bytes you had before.
</code></pre>
<p>在Python2中,只要在交互提示下执行<code>a</code>,就会在转义字符串中显示非ascii字符(如<code>\xc3</code>或<code>\u4f60</code>)。您可以执行<code>print a</code>来显示字符。或者使用python3,它将显示包含unicode字符的字符串。在</p>