在 Python 中將二進位制轉換為十六進位制

Vaibhhav Khetarpal 2023年1月30日 2022年5月17日 Python Python Binary Python Hex
  1. 在 Python 中建立並使用使用者定義的函式將二進位制轉換為十六進位制
  2. 在 Python 中使用 int()hex() 函式將 Binary 轉換為 Hex
  3. 在 Python 中使用 binascii 模組將 Binary 轉換為 Hex
  4. 在 Python 中使用 format() 函式將 Binary 轉換為 Hex
  5. 在 Python 中使用 f-stringsBinary 轉換為 Hex
在 Python 中將二進位制轉換為十六進位制

二進位制和十六進位制是可以在 Python 中表示數值的眾多數字系統中的兩個。本教程重點介紹在 Python 中將 Binary 轉換為 Hex 的不同方法。

在 Python 中建立並使用使用者定義的函式將二進位制轉換為十六進位制

我們可以在 while 迴圈的幫助下建立我們的使用者定義函式,並將其放置到位以將 Binary 中的值轉換為 Python 中的 Hex

以下程式碼使用使用者定義的函式在 Python 中將 Binary 轉換為 Hex

print("Enter the Binary Number: ", end="")
bnum = int(input())

h = 0
m = 1
chk = 1
i = 0
hnum = []
while bnum!=0:
    rem = bnum%10
    h = h + (rem*m)
    if chk%4==0:
        if h<10:
            hnum.insert(i, chr(h+48))
        else:
            hnum.insert(i, chr(h+55))
        m = 1
        h = 0
        chk = 1
        i = i+1
    else:
        m = m*2
        chk = chk+1
    bnum = int(bnum/10)

if chk!=1:
    hnum.insert(i, chr(h+48))
if chk==1:
    i = i-1

print("\nEquivalent Hexadecimal Value = ", end="")
while i>=0:
    print(end=hnum[i])
    i = i-1
print()

上面的程式碼提供了以下輸出。

Enter the Binary Number: 0101101
Equivalent Hexadecimal Value = 2D

在 Python 中使用 int()hex() 函式將 Binary 轉換為 Hex

我們同時使用 int()hex() 函式來實現此方法。

首先,使用 int() 方法將給定的二進位制數轉換為整數值。在此過程之後,hex() 函式將新找到的整數值轉換為十六進位制值。

以下程式碼使用 int()hex() 函式在 Python 中將 Binary 轉換為 Hex

print(hex(int('0101101', 2)))

上面的程式碼提供了以下輸出。

0x2d

在 Python 中使用 binascii 模組將 Binary 轉換為 Hex

Python 提供了一個從 Python 3 開始的 binascii 模組,可用於在 Python 中將 Binary 轉換為 Hexbinascii 模組需要手動匯入 Python 程式碼才能使此方法工作。

此方法開啟一個文字檔案,接收檔案的內容,並可以使用 hexlify() 函式返回檔案中給定資料的 hex 值。

以下程式碼使用 binascii 模組在 Python 中將 Binary 轉換為 Hex

import binascii
bFile = open('ANYBINFILE.exe','rb')
bData = bFile.read(8)
print(binascii.hexlify(bData))

在 Python 中使用 format() 函式將 Binary 轉換為 Hex

format() 函式是在 Python 中實現字串格式化的方法之一。format() 函式用於在 {} 大括號內提供格式化字串。

以下程式碼使用 format() 函式在 Python 中將 Binary 轉換為 Hex

print("{0:0>4X}".format(int("0101101", 2)))

上面的程式碼提供了以下輸出。

002D

在 Python 中使用 f-stringsBinary 轉換為 Hex

在 Python 3.6 中引入,它是 Python 中實現字串格式化的最新方法。它可以在較新和最新版本的 Python 中使用。

它比其他兩個同行,% 符號和 str.format() 更有效,因為它更快更容易理解。它還有助於以比其他兩種方法更快的速度在 Python 中實現字串格式。

以下程式碼使用 f-strings 在 Python 中將 Binary 轉換為 Hex

bstr = '0101101'
hexstr = f'{int(bstr, 2):X}'
print(hexstr)

上面的程式碼提供了以下輸出。

2D
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

相關文章 - Python Binary

  • Python 中的二進位制數表示
  • 在 Python 中將字串轉換為二進位制
  • 在 Python 中轉換二進位制為 Int
  • 相關文章 - Python Hex

  • 在 Python 中將 HEX 轉換為 RGB
  • 在 Python 中將十六進位制轉換為 ASCII
  • 在 Python 中將字串轉換為十六進位制
  • 在 Python 中將十六進位制轉換為十進位制
  • 在 Python 中轉換十六進位制字串為 Int