日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python hex 补0_Python保留前导零的二进制到十六进制转换

發(fā)布時(shí)間:2025/4/16 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python hex 补0_Python保留前导零的二进制到十六进制转换 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我想把一個(gè)576位的二進(jìn)制數(shù)轉(zhuǎn)換成hex,所以我編寫了下面的python腳本。雖然寫作很有趣,但我相信它是巨大的,丑陋的,而且很可能是不必要的復(fù)雜。我想知道是否有新的更有效的方法來(lái)使用一些內(nèi)置的python。我使用任何我能找到的方法的問(wèn)題是保留前導(dǎo)零,因?yàn)檫@是絕對(duì)關(guān)鍵的。下面是我用來(lái)測(cè)試的輸入和輸出以及我編寫的代碼。在

輸入:000011110111101011000101

輸出:

^{pr2}$

代碼file = open("binforhex.txt",'r')

stream = file.read()

num = []

byte = []

hexOut = []

n = 0

print stream

for x in stream:

num.append(x)

while n < len(num):

byte.append(int(num[n]))

if n > 1:

if (n + 1) % 4 == 0:

if cmp([0, 0, 0, 0],byte) == 0 :

hexOut.append('0')

elif cmp([0, 0, 0, 1],byte) == 0 :

hexOut.append('1')

elif cmp([0, 0, 1, 0],byte) == 0 :

hexOut.append('2')

elif cmp([0, 0, 1, 1],byte) == 0 :

hexOut.append('3')

elif cmp([0, 1, 0, 0],byte) == 0:

hexOut.append('4')

elif cmp([0, 1, 0, 1],byte) == 0:

hexOut.append('5')

elif cmp([0, 1, 1, 0],byte) == 0:

hexOut.append('6')

elif cmp([0, 1, 1, 1],byte) == 0:

hexOut.append('7')

elif cmp([1, 0, 0, 0],byte) == 0:

hexOut.append('8')

elif cmp([1, 0, 0, 1],byte) == 0:

hexOut.append('9')

elif cmp([1, 0, 1, 0],byte) == 0:

hexOut.append('a')

elif cmp([1, 0, 1, 1],byte) == 0:

hexOut.append('b')

elif cmp([1, 1, 0, 0],byte) == 0:

hexOut.append('c')

elif cmp([1, 1, 0, 1],byte) == 0:

hexOut.append('d')

elif cmp([1, 1, 1, 0],byte) == 0:

hexOut.append('e')

elif cmp([1, 1, 1, 1],byte) == 0 :

hexOut.append('f')

byte.pop()

byte.pop()

byte.pop()

byte.pop()

n += 1

print ''.join(hexOut)

總結(jié)

以上是生活随笔為你收集整理的python hex 补0_Python保留前导零的二进制到十六进制转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。