在python中将字符串转换为unicode

2024-09-28 20:41:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在Python中将字符串类型转换为Unicode。我希望它适用于任何非英语字符串,例如日语、中文或西班牙语。在

例如,日语_var有一些日语字符[ドキュメントを翻訳します]。在

打印出来就可以了

'\x83h\x83L\x83\x85\x83\x81\x83\x93\x83g\x82\xf0\x96|\x96\xf3\x82\xb5\x82\xdc\x82\xb7'

检查它的类型

^{pr2}$

如何将其转换为“unicode”类型?在

我应该用日语吗_变量解码('mbcs')?当我将在不同的操作系统平台和不同的外国语言环境中使用此代码时,使用该代码会产生什么后果?在

我使用的是python2.5.4

我正在从文件的属性中读取参数,该参数可以是文件的任何非英语字符串。在


Tags: 字符串代码类型参数varunicode字符中将
2条回答

它通过传递“mbcs”来解码任何语言环境对我都有效。在

谢谢你们的帮助。在

您需要知道输入字符串的编码。没有可靠的普遍解决方案。在

编码应该可以从输入字符串的源获得。例如,如果您从web页面获取文本,编码应该作为HTTP Content-Type的一部分,或者作为来自服务器的HTTP响应头,或者作为页面源中的<meta>标记。在

一旦知道了编码,就使用decode方法。在

此字符串似乎是Shift JIS:

>>> x = '\x83h\x83L\x83\x85\x83\x81\x83\x93\x83g\x82\xf0\x96|\x96\xf3\x82\xb5\x82\xdc\x82\xb7'
>>> print x.decode( "shift-jis" )
ドキュメントを翻訳します

相关问题 更多 >