<p>我不知道为什么斯拉瓦·巴切里科夫删除了他的答案,但这是正确的答案,所以我将更详细地重复一遍。在</p>
<hr/>
<p><a href="https://docs.python.org/3/library/stdtypes.html#str.encode" rel="nofollow">^{<cd1>}</a>正是您想要的:</p>
<blockquote>
<p>Return an encoded version of the string as a <code>bytes</code> object. Default encoding is <code>'utf-8'</code>. <em>errors</em> may be given to set a different error handling scheme. The default for errors is <code>'strict'</code>, meaning that encoding errors raise a <a href="https://docs.python.org/3.4/library/exceptions.html#UnicodeError" rel="nofollow"><code>UnicodeError</code></a>. Other possible values are <code>'ignore'</code>, <code>'replace'</code>, <code>'xmlcharrefreplace'</code>, <code>'backslashreplace'</code> and any other name registered via <a href="https://docs.python.org/3.4/library/codecs.html#codecs.register_error" rel="nofollow"><code>codecs.register_error()</code></a>, see section <a href="https://docs.python.org/3.4/library/codecs.html#codec-base-classes" rel="nofollow">Codec Base Classes</a>. For a list of possible encodings, see section <a href="https://docs.python.org/3.4/library/codecs.html#standard-encodings" rel="nofollow">Standard Encodings</a>.</p>
</blockquote>
<p>如果您沿着这个链接到标准编码,您将看到一个很好的表,其中显示了用于每个编码的名称(您可以使用主编解码器名称,也可以使用任何别名)。在</p>
<p>所以:</p>
<pre><code>encoded_bytes = [S.encode(codec) for codec in
('cp1256', 'iso-8859-1', 'iso-8859-2', 'iso-8859-6',
'iso-8859-15', 'windows-1252')]
</code></pre>
<hr/>
<p>虽然您可以按照其他答案的建议使用<a href="https://docs.python.org/3/library/codecs.html#codecs.encode" rel="nofollow">^{<cd2>}</a>,但确实没有什么好的理由这样做,而且有一个很好的理由不这样做:<code>str.encode</code>强化了这样一个事实,即您在一个<code>str</code>对象上调用它,并使用一个将<code>str</code>转换为{<cd6>}的编解码器;如果不小心在已经编码的<code>bytes</code>或<code>list</code>或其他东西上使用它,则会得到一个异常。在</p>
<hr/>
<p>以上所有内容都假设您使用的是python3。如果您使用的是python2,<code>str</code>已经被编码。因此,如果您可以从<code>unicode</code>对象开始,比如<code>u"Test"</code>而不是{<cd12>},那么就这样做;否则,您需要先<code>decode</code>。不幸的是,Python2不会强制执行这一点;如果您调用<code>str.encode</code>,它实际上会用<code>sys.getdefaultencoding</code>对其进行解码,这通常是ASCII,这将导致愚蠢的错误。在</p>