當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Decimal轉Hexadecimal用法及代碼示例


在本文中,我們將學習如何在 Python 中將十進製值(以 10 為底)轉換為十六進製值(以 16 為底)。

方法一:使用hex()函數

hex()函數是Python3中的內置函數之一,用於將整數轉換為其對應的十六進製形式。

用法 :hex(x) 

參數

  • x- 一個整數(int 對象)

返回 返回十六進製字符串。

Errors and Exceptions:

TypeError:其他任何情況下都返回 TypeError

整數類型常量作為參數傳遞。

代碼:

Python3


# Python3 program to illustrate
# hex() function
  
print("The hexadecimal form of 69 is "
      + hex(69))

輸出:

The hexadecimal form of 69 is 0x45

方法二:迭代法

將十進製轉換為十六進製的常規方法是將其除以 16 直到等於 0。給定十進製數的十六進製版本是十六進製形式的從最後到第一個的餘數序列。要將餘數轉換為十六進製形式,請使用以下轉換表:

十六進製等效
00
11
22
33
44
55
66
77
88
99
10A
11B
12C
13D
14E
15F

代碼:

Python3


# Conversion table of remainders to
# hexadecimal equivalent
conversion_table = {0:'0', 1:'1', 2:'2', 3:'3', 4:'4',
                    5:'5', 6:'6', 7:'7',
                    8:'8', 9:'9', 10:'A', 11:'B', 12:'C',
                    13:'D', 14:'E', 15:'F'}
  
  
# function which converts decimal value
# to hexadecimal value
def decimalToHexadecimal(decimal):
    hexadecimal = ''
    while(decimal > 0):
        remainder = decimal % 16
        hexadecimal = conversion_table[remainder] + hexadecimal
        decimal = decimal // 16
  
    return hexadecimal
  
  
decimal_number = 69
print("The hexadecimal form of", decimal_number,
      "is", decimalToHexadecimal(decimal_number))

輸出:

The hexadecimal form of 69 is 45

方法3:遞歸方法

這個想法類似於迭代方法中使用的想法。

代碼:

Python3


# Conversion table of remainders to
# hexadecimal equivalent
conversion_table = {0:'0', 1:'1', 2:'2', 3:'3',
                    4:'4', 5:'5', 6:'6', 7:'7',
                    8:'8', 9:'9', 10:'A', 11:'B',
                    12:'C', 13:'D', 14:'E', 15:'F'}
  
  
# function which converts decimal value
# to hexadecimal value
def decimalToHexadecimal(decimal):
    if(decimal <= 0):
        return ''
    remainder = decimal % 16
    return decimalToHexadecimal(decimal//16) + conversion_table[remainder]
  
  
decimal_number = 69
print("The hexadecimal form of", decimal_number,
      "is", decimalToHexadecimal(decimal_number))

輸出:

The hexadecimal form of 69 is 45

相關用法


注:本文由純淨天空篩選整理自chirags_30大神的英文原創作品 Python Program to Convert Decimal to Hexadecimal。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。