第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在字符串中添加十六進制字節(jié)?

如何在字符串中添加十六進制字節(jié)?

呼喚遠方 2022-08-16 16:27:24
我有這個十六進制字節(jié)字符串,用空格分隔:byteString = "7E 00 0A 01 01 50 01 00 48 65 6C 6C 6F"如何以這種方式添加字節(jié):01 + 01 + 50 + 01 + 00 + 48 + 65 + 6C + 6C + 6F = 247
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經(jīng)驗 獲得超4個贊

考慮到您將十六進制序列作為str字節(jié)),您需要做的是:

  • 將序列拆分為較小的字符串,每個字符串表示一個字節(jié)(2個十六進制數(shù)字):“7E”,“00”,...

  • 將每個這樣的字符串轉(zhuǎn)換為與十六進制表示相對應(yīng)的整數(shù)值(結(jié)果將是整數(shù)列表)

  • 添加所需的值(忽略 1st 3)

>>> byte_string = "7E 00 0A 01 01 50 01 00 48 65 6C 6C 6F"

>>>

>>> l = [int(i, 16) for i in byte_string.split(" ")]  # Split and conversion to int done in one step

>>> l

[126, 0, 10, 1, 1, 80, 1, 0, 72, 101, 108, 108, 111]

>>>

>>> [hex(i) for i in l]  # The hex representation of each element (for checking only)

['0x7e', '0x0', '0xa', '0x1', '0x1', '0x50', '0x1', '0x0', '0x48', '0x65', '0x6c', '0x6c', '0x6f']

>>>

>>> s = sum(l[3:])

>>>

>>> s

583

>>> hex(s)

'0x247'


查看完整回答
反對 回復(fù) 2022-08-16
?
猛跑小豬

TA貢獻1858條經(jīng)驗 獲得超8個贊

您需要分兩部分解決這個問題 - 將字符串轉(zhuǎn)換為數(shù)字列表,然后對列表求和。為此,您可以使用內(nèi)置的bytearray.fromhex和sum函數(shù):


byteString = "7E 00 0A 01 01 50 01 00 48 65 6C 6C 6F"

numberList = bytearray.fromhex(byteString)

total = sum(numberList)


查看完整回答
反對 回復(fù) 2022-08-16
  • 2 回答
  • 0 關(guān)注
  • 237 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號