在Python中,如何將一個整數值(< 256)表示爲一個字符串?例如:如何在python中將數字值表示爲字符串?
i = 10
如何創建一個字節長的字符串「s」,該字節的值爲10?
澄清,我不想要一個字符串「10」。我想一個字符串,它的第一次(也是唯一)字節具有順便的10
價值,我不能靜態地建立一個字符串:
s = '\x0A'
,因爲該值不是預先定義的。這是一個動態數字值。
在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