在本文中,我們將學習如何在 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。給定十進製數的十六進製版本是十六進製形式的從最後到第一個的餘數序列。要將餘數轉換為十六進製形式,請使用以下轉換表:餘 十六進製等效 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
代碼:
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
相關用法
- Python Binary轉Hexadecimal用法及代碼示例
- Java Binary轉Hexadecimal用法及代碼示例
- Java Hexadecimal轉Binary用法及代碼示例
- Python Bytearray轉Hexadecimal String用法及代碼示例
- Python Decimal轉String用法及代碼示例
- Python Decimal轉Other Bases用法及代碼示例
注:本文由純淨天空篩選整理自chirags_30大神的英文原創作品 Python Program to Convert Decimal to Hexadecimal。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。