0
在Python2一個可能:Python3字符串表示
>>> struct.pack(">f", 125.4)
>>> 'B\xfa\xcc\xcd'
我怎樣才能得到Python3相同的字符串?我嘗試了不同的編碼,但可以準確得到它。
在Python2一個可能:Python3字符串表示
>>> struct.pack(">f", 125.4)
>>> 'B\xfa\xcc\xcd'
我怎樣才能得到Python3相同的字符串?我嘗試了不同的編碼,但可以準確得到它。
我能夠通過使用'latin1'編碼解碼字節來獲得正確的字符串。它在Python3控制檯中看起來與在Python2控制檯中看起來不一樣,但程序解釋的是相同的。
Python2:
>>> struct.pack(">f", 125.4)
'B\xfa\xcc\xcd'
Python3:
>>> b = struct.pack(">f", 125.4)
>>> b.decode("latin1")
<something that cannot be pasted>
你不想只是刪除前導零? Python3給出** b「\ x00 \ x00 \ x00 \ x00 \ xcd \ xcc \ xfa8」** – UpmostScarab
我不知道您輸入的是什麼樣的包格式,但我不認爲這是我上面顯示的內容。但即使如此,你顯示字節,我想要一個字符串。 –