Python 以任意编码打印整数字符

Python 以任意编码打印整数字符,python,python-3.x,Python,Python 3.x,对于任意编码,如何执行与chr()函数等效的功能?考虑这种尝试(不起作用): 此操作失败,因为AttributeError:“int”对象没有属性“encode” 这种尝试也不起作用: for i in range(128, 255): j = "\x%x " % (i,) print("%x " % (j.encode('cp1252'),) ) 此操作失败,SyntaxError:(unicode错误)'UnicodeScape'编解码器无法解码位置0-2:truncate

对于任意编码,如何执行与
chr()
函数等效的功能?考虑这种尝试(不起作用):

此操作失败,因为AttributeError:“int”对象没有属性“encode”

这种尝试也不起作用:

for i in range(128, 255):
    j = "\x%x " % (i,)
    print("%x " % (j.encode('cp1252'),) )
此操作失败,SyntaxError:(unicode错误)'UnicodeScape'编解码器无法解码位置0-2:truncated\xXX escape的字节


我专门针对Python3。

在Python3中,我相信您想要这个

chr(i).encode('cp1252')
或者在Python2.x中,您可以使用

unichr(i).encode('cp1252')
完整代码是

for i in range(128, 255):
    print("%s " % (unichr(i).encode('cp1252',errors='replace')))
在我的控制台上,
cp1252
编码不起作用并引发异常。要至少打印十六进制值,可以包括
错误部分


这篇文章是相关的:在Python3中,我相信你想要这个

chr(i).encode('cp1252')
或者在Python2.x中,您可以使用

unichr(i).encode('cp1252')
完整代码是

for i in range(128, 255):
    print("%s " % (unichr(i).encode('cp1252',errors='replace')))
在我的控制台上,
cp1252
编码不起作用并引发异常。要至少打印十六进制值,可以包括
错误部分


这篇文章是相关的:在Python3中,我相信你想要这个

chr(i).encode('cp1252')
或者在Python2.x中,您可以使用

unichr(i).encode('cp1252')
完整代码是

for i in range(128, 255):
    print("%s " % (unichr(i).encode('cp1252',errors='replace')))
在我的控制台上,
cp1252
编码不起作用并引发异常。要至少打印十六进制值,可以包括
错误部分


这篇文章是相关的:在Python3中,我相信你想要这个

chr(i).encode('cp1252')
或者在Python2.x中,您可以使用

unichr(i).encode('cp1252')
完整代码是

for i in range(128, 255):
    print("%s " % (unichr(i).encode('cp1252',errors='replace')))
在我的控制台上,
cp1252
编码不起作用并引发异常。要至少打印十六进制值,可以包括
错误部分


这篇文章很有意义:你到底想达到什么目的?第二次尝试归结为:

for i in range(128, 255):
    j = chr(i)
    print("%x " % (j.encode('cp1252'),) )
但我看不出这与cp1252的
chr
是如何等价的
chr(i)
将代码页中的位置
i
转换为相应的字符(返回值是长度为1的unicode字符串)。您可以使用以下命令对cp1252(或任何其他编码)执行类似的转换
字节([i])。解码('cp1252')
,这看起来更像是您的第一次尝试。

您到底想实现什么?第二次尝试归结为:

for i in range(128, 255):
    j = chr(i)
    print("%x " % (j.encode('cp1252'),) )
但我看不出这与cp1252的
chr
是如何等价的
chr(i)
将代码页中的位置
i
转换为相应的字符(返回值是长度为1的unicode字符串)。您可以使用以下命令对cp1252(或任何其他编码)执行类似的转换
字节([i])。解码('cp1252')
,这看起来更像是您的第一次尝试。

您到底想实现什么?第二次尝试归结为:

for i in range(128, 255):
    j = chr(i)
    print("%x " % (j.encode('cp1252'),) )
但我看不出这与cp1252的
chr
是如何等价的
chr(i)
将代码页中的位置
i
转换为相应的字符(返回值是长度为1的unicode字符串)。您可以使用以下命令对cp1252(或任何其他编码)执行类似的转换
字节([i])。解码('cp1252')
,这看起来更像是您的第一次尝试。

您到底想实现什么?第二次尝试归结为:

for i in range(128, 255):
    j = chr(i)
    print("%x " % (j.encode('cp1252'),) )
但我看不出这与cp1252的
chr
是如何等价的
chr(i)
将代码页中的位置
i
转换为相应的字符(返回值是长度为1的unicode字符串)。您可以使用以下命令对cp1252(或任何其他编码)执行类似的转换
字节([i])。解码('cp1252')
,这看起来更像是您的第一次尝试。

也不是3.3。我当然试过了。当你说“不工作”时,你能说得更具体一点吗?在
范围(128255)
中循环,在第一个字符中抛出一个
UnicodeDecodeError
,而不是3.3。我当然试过了。当你说“不工作”时,你能说得更具体一点吗?在
范围(128255)
中循环,在第一个字符中抛出一个
UnicodeDecodeError
,而不是3.3。我当然试过了。当你说“不工作”时,你能说得更具体一点吗?在
范围(128255)
中循环,在第一个字符中抛出一个
UnicodeDecodeError
,而不是3.3。我当然试过了。当你说“不工作”时,你能说得更具体一点吗?在
范围(128255)
中循环,在第一个字符中抛出一个
UnicodeDecodeError
,我必须解码
j
并将其作为字符串打印,但这是有效的<编码>打印(“%s”%(j.encode('cp1252')。解码('cp1252'))
。还要注意,代码点128-159不起作用,我必须从160开始。谢谢。我必须解码
j
并将其作为字符串打印出来,但这样做有效<编码>打印(“%s”%(j.encode('cp1252')。解码('cp1252'))
。还要注意,代码点128-159不起作用,我必须从160开始。谢谢。我必须解码
j
并将其作为字符串打印出来,但这样做有效<编码>打印(“%s”%(j.encode('cp1252')。解码('cp1252'))
。还要注意,代码点128-159不起作用,我必须从160开始。谢谢。我必须解码
j
并将其作为字符串打印出来,但这样做有效<编码>打印(“%s”%(j.encode('cp1252')。解码('cp1252'))
。还要注意,代码点128-159不起作用,我必须从160开始。非常感谢。