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
我不知道您输入的是什么样的包格式,但我不认为这是我上面显示的内容。但即使如此,你显示字节,我想要一个字符串。 –