Python源代码编码

2024-09-30 04:31:57 发布

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

在我的Paspberry上,我在Python2.7下运行了一个Python脚本。你知道吗

我想声明一些字符串文字为拉丁-1,而不是UTF-8。你知道吗

因此,我添加了声明

# -*- coding: latin-1 -*-

在我文件的开头。但是不管我使用哪种编码,下面的代码片段总是将我的字符串声明为UTF-8。你知道吗

    s = 'äöü'
    print '%s %d' %(s, len(s))
    print '%x %x %x %x %x %x' % (ord(s[0]), ord(s[1]), ord(s[2]), ord(s[3]), ord(s[4]), ord(s[5]))

始终向我展示:

äöü 6
c3 a4 c3 b6 c3 bc

用拉丁1编码声明字符串文字的正确方法是什么,即在我的例子中,我希望字符串包含3个字符:0xe4、0xf6、0xfc?你知道吗


Tags: 文件字符串代码脚本声明编码lenutf
2条回答

如果我理解,您可以使用:

s.encode('latin-1');

为了你的问题。你知道吗

示例:

>>> s = u'ééé'.encode('latin1') 
>>> s.decode('latin1')
u'\xe9\xe9\xe9'

Source of the example。你知道吗

如果你能做到,给我反馈。你知道吗

'\xe4\xf6\xfc'

是具有指定的3个字节的字节字符串。你知道吗

至于为什么不能正确编码,这取决于编辑器如何保存文件。您可能希望通过使用hexdump查看源文件来检查它是否使用拉丁语-1保存。你知道吗

相关问题 更多 >

    热门问题