Python hex string to int 16進位字串轉數字

本篇介紹 Python hex string to int 16進位字串轉數字,Python 沒有所謂的 hex 的變數型態,所以 16 進位都是要轉換到 int 去作運算,之後要顯示成 16 進位的話在轉成16進位的字串即可。

16進位字串轉成 int

16進位前面有個0x開頭用來表示16進位,如果想要將16進位的字串轉成 Python 的數字類型作運算的話,需要先作轉換
int() 可以將字串轉成整數數字,預設可以傳入基數 base 10進位的數字,要傳入基數 base 16進位的數字的話,要在第二個參數指定16,
hex() 可以將10進位的數字轉成16進位表示的字串,

python3-hex-to-int.py
1
2
3
4
5
6
7
8
9
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

hex_string = '0xff'
number = int(hex_string, 16)
print(number)
s = hex(number)
print(s)
print(type(s))

結果如下,

1
2
3
255
0xff
<class 'str'>

16進位字串轉成 int 作運算

這邊示範16進位字串轉成 int 作運算,最後在轉成字串印出來,

python3-hex-to-int2.py
1
2
3
4
5
6
7
8
9
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

hex_string = '0xa'
number = int(hex_string, 16)
print(number)
s = hex(number + 0xa)
print(s)
print(type(s))

結果如下,

1
2
3
10
0x14
<class 'str'>

其它相關文章推薦
Python 新手入門教學懶人包