如何在python中将数字值表示为字符串?
在Python中,如何将一个整数值(< 256)表示为一个字符串?例如:如何在python中将数字值表示为字符串?
i = 10
如何创建一个字节长的字符串“s”,该字节的值为10?
澄清,我不想要一个字符串“10”。我想一个字符串,它的第一次(也是唯一)字节具有顺便的10
价值,我不能静态地建立一个字符串:
s = '\x0A'
,因为该值不是预先定义的。这是一个动态数字值。
可以使用chr()
功能:
>>> chr(60)
'<'
>>> chr(97)
'a'
>>> chr(67)
'C'
转换回使用ord()
funtion为:
>>> ord('C')
67
谢谢!这很棒! – user1783732 2014-11-24 19:28:07
在Python 2.x中,你想:
s = chr(10)
在Python 3.x中,字符串都是Unicode,所以你想:
s = bytes([10])
这也适用于Python 3,前提是OP需要一个字符串。 – 2014-11-24 19:21:58
是的,但它是Unicode的,所以可能不是你*真正想要的。 – kindall 2014-11-24 19:22:54
为什么不呢? OP指定如果他们对字符串进行硬编码,他们会使用“\ x0A'',而不是'b'\ x0A''。无论如何,不清楚他们使用的是哪个版本。 – 2014-11-24 19:25:04
你为什么不只是使用chr
?
chr(10)
Out[41]: '\n'
chr(255)
Out[42]: '\xff'
发现使用结构模块另一个答案为Python 2个工作:
import struct struct.pack( 'B',i)
'chr(10)' - 这个? – georg 2014-11-24 19:21:02
''\ xA''是一个语法错误,可能你的意思是''\ x0A''。 – 2014-11-24 19:22:42