Return an encoded version of the string as a bytes object. Default encoding is 'utf-8'. errors may be given to set a different error handling scheme. The default for errors is 'strict', meaning that encoding errors raise a UnicodeError. Other possible values are 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' and any other name registered via codecs.register_error(), see section Codec Base Classes. For a list of possible encodings, see section Standard Encodings.
它是^{} 模块的用途:
只需使用^{} 模块
如果您想先检查python是否知道某种编码格式,只需使用
^{pr2}$我不知道为什么斯拉瓦·巴切里科夫删除了他的答案,但这是正确的答案,所以我将更详细地重复一遍。在
^{} 正是您想要的:
如果您沿着这个链接到标准编码,您将看到一个很好的表,其中显示了用于每个编码的名称(您可以使用主编解码器名称,也可以使用任何别名)。在
所以:
虽然您可以按照其他答案的建议使用^{} ,但确实没有什么好的理由这样做,而且有一个很好的理由不这样做:}的编解码器;如果不小心在已经编码的
str.encode
强化了这样一个事实,即您在一个str
对象上调用它,并使用一个将str
转换为{bytes
或list
或其他东西上使用它,则会得到一个异常。在以上所有内容都假设您使用的是python3。如果您使用的是python2,},那么就这样做;否则,您需要先
str
已经被编码。因此,如果您可以从unicode
对象开始,比如u"Test"
而不是{decode
。不幸的是,Python2不会强制执行这一点;如果您调用str.encode
,它实际上会用sys.getdefaultencoding
对其进行解码,这通常是ASCII,这将导致愚蠢的错误。在相关问题 更多 >
编程相关推荐