簡體   English   中英

在Python中將字符串轉換為打包數據

[英]Convert string to packed data in Python

我的目標是在Python中將地址字符串轉換為打包數據。 例如:

address = '7fffde53bf80'             #input
formated  = '\x80\xbf\x53\xde\xff\x7f' #desired output

我編寫了一個簡單的腳本來完成此任務。

x = range(len(address))
evn = [e for e in x if e % 2 == 0][::-1] #reverse the list
formated = ''
i = 0
while(i < len(evn)):
    formated = formated + r'\x' + address[evn[i]:evn[i] + 2]
    i = i + 1
print formated

我相信會有更好的方法在python中做到這一點。 有人可以建議我怎么做嗎?

使用str.decode()將十六進制值解碼為字節,然后反轉:

address.decode('hex')[::-1]

演示:

>>> address = '7fffde53bf80'
>>> address.decode('hex')[::-1]
'\x80\xbfS\xde\xff\x7f'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM