Python的10進制與16進制轉換

16進制轉10進制

準確地說,是16進制的string轉成10進制的int。
print(int('ff', 16)) # 255 有前綴0x時,base可使用0,讓int()函式自動辨認是16進制
建議
print(int('0xff', 0)) # 255 斟酌
print(int('0xff', 16)) # 255

10進制轉16進制

使用hex()可以回傳有前綴0x的小寫16進制string。
print(hex(255)) # 0xff 也可以用format格式
print('{:x}'.format(255)) # ff print('{:X}'.format(255)) # FF

前面補0

建議
print('{:04x}'.format(255)) # 00ff 不建議
print('{:0>4x}'.format(255)) # 00ff

加上前綴0x

建議
print(hex(255)) # 0xff print('0x{:x}'.format(255)) # 0xff 斟酌
print('{}'.format(hex(255))) # 0xff print('{:#x}'.format(255)) # 0xff

加上前綴0x且補0

建議
print('0x{:04x}'.format(255)) # 0x00ff 不建議
print('{:#06x}'.format(255)) # 0x00ff

留言

這個網誌中的熱門文章

私有IP

echo "text" > file 發生 Permission denied

Git指令彙整