十六進製制轉字串

2021-10-02 10:54:11 字數 2230 閱讀 1199

給大家看下資料哦

密密麻麻的恐怖如斯,然後放上我的**:

說下思路:

利用xlrd 去訪問excel,首先是開啟檔案 獨取對應的表。我們所需要的資料在第三列,起始位置有效位置是第二行

list

= table.col(colx=

2, start_rowx=

1, end_rowx=

none

)

拿到資料以後我們列印一下會發現,有開頭是number的 有的是text,這裡我們只需要text的

str

(li)

.startswith(

'text'

)

拿到真正需要處理的資料後,就要開始搞事情了,不過有個條件,我們來看下:

def

unhexlify

(hexstr)

:# known case of binascii.unhexlify

""" binary data of hexadecimal representation.

hexstr must contain an even number of hex digits (upper or lower case).

"""return b""

這裡我們看見人家定義的方法,宣告需要偶數的十六進製制數字,我們得需要進行一點處理,將「0x」去掉。然後保證數值是偶數個,然後進行方法呼叫。

hex

=str

(li)[8

:-1]

if(len(

hex)%2

!=0):

hex=

hex[0:

-1] txt = binascii.unhexlify(

hex)

得到了想要的結果,就只需要進行指定格式儲存了,給大家看下效果

'病歷.xlsx'

)table = data.sheets()[

0]#通過索引順序獲取表

list

= table.col(colx=

2, start_rowx=

1, end_rowx=

none

)#print(len(list))

di =

0for li in

list

:#print(str(li))if(

str(li)

.startswith(

'text'))

:hex

=str

(li)[8

:-1]

print

(len

(hex))

#列印長度

print

(hex

)#列印資料if(

len(

hex)%2

!=0):

hex=

hex[0:

-1] txt = binascii.unhexlify(

hex)

print

(txt)

with

open

('內容//'

+str

(di)

+'.xml'

,'wb'

)as f:

f.write(txt)

di = di+

1print

("done"

)

十六進製制轉字串

兩個16進製制的字元轉成乙個位元組 int islowercase signed int character int uppercasetolower int character 這裡是固定傳入偶數個字元的16進製制字元 void strtohex uint8 t hexstr,uint8 t he...

任意長度十進位制字串轉十六進製制字串

所謂十進位制轉換十六進製制,其實就是要了解轉換原理,再把數學邏輯翻譯成 邏輯 比如十進位制字串 12345678 轉換之後為 bc614e 順帶普及下十六進製制值 十六進製制,顧名思義,就是每個字元位的取值範圍為 0 15 其中 十進位制值 十六進製制值 0 0 1 1 2 2 3 3 4 4 5 ...

十六進製制字串操作

任何資料在計算機內部都是以二進位制儲存的,所以進製與資料的儲存無關,只與輸入 輸出有關。所以,對於進製轉換,我們只關心字串中的結果。在上面的第 4 條中提到了 tostring 方法可以將數值轉換成字串,不過在字串 中,結果是以十進位制顯示的。現在我們帶給它加一些引數,就可以將其轉換成十六進製制 使...