打印 UTF-8 编码的字节字符串

发布于 2024-12-27 04:27:25 字数 303 浏览 1 评论 0原文

我有一个表格的数据: v = "\xc5\x84"

这是 utf-8 编码字符“ń”的字节表示。

如何打印>>ń<<使用变量 v?

我使用的是 python 2.7.2

原始变量 v 包含字符串:

v = "\\xc5\\x84" (双反斜杠)

vs

v = "\xc5\x84"< /code>(单反斜杠)

本身就是有效的 utf-8 字符。

I have a data of a form:
v = "\xc5\x84"

This is a byte representation of an utf-8 encoded character "ń".

How can I print >>ń<< using variable v?

I'm using python 2.7.2

In original the variable v contained string:

v = "\\xc5\\x84" (double backslashes)

vs

v = "\xc5\x84" (single backslashes)

which is by itself valid utf-8 character.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

以往的大感动 2025-01-03 04:27:25

编辑在我的机器中,输出取决于所使用的 shell/python,如下所示。
正如 Klaus 所评论的,这里的主要角色是系统中的区域设置。

>>> v = "\xc5\x84"

>>> print v   #in pycrust shell python 2.6
Å„
>>>

>>> print (v) #in idle python 3.2
Å
>>> 

该机器具有以下设置:

>>> import locale
>>> locale.getlocale()
('es_ES', 'cp1252')

与此设置无关,您可以通过以下方式获得角色

>>> print v.decode('utf-8')
ń
>>> 

Edit In my machine the output depends on the shell/python used, as shown below.
As commented by Klaus a major actor here would be the locale setting in your system.

>>> v = "\xc5\x84"

>>> print v   #in pycrust shell python 2.6
Å„
>>>

>>> print (v) #in idle python 3.2
Å
>>> 

the machine has the following settings:

>>> import locale
>>> locale.getlocale()
('es_ES', 'cp1252')

Independently of this setting, you get your character with

>>> print v.decode('utf-8')
ń
>>> 
长安忆 2025-01-03 04:27:25

嗯,你不需要做任何特别的事情......只是 print v

>>> v = "\xc5\x84"
>>> print v
ń

Uhm, you don't need to do anything special... It's just print v?

>>> v = "\xc5\x84"
>>> print v
ń
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文