如何在 Python 中將十六進位制字串轉換為整數?
在 Python 中,字串 是一組字元,可以用來表示單個單詞或整個短語。由於字串在 Python 中使用簡單,因此不需要顯式宣告,並且可以使用或不使用指定符來定義。
在 Python 中,名為 string 的類表示字串。此類提供了一些 內建方法,使用這些方法,我們可以對字串執行各種操作。
在本文中,我們將瞭解如何在 Python 中將十六進位制字串轉換為整數。
使用 int() 方法
實現此目標的一種方法是使用內建的整數型別轉換方法 int()。我們有兩個引數,第一個是字串,第二個是給定字串所在的基數,即您必須將 16 作為第二個引數傳遞,因為輸入字串是十六進位制字串。
如果給定的十六進位制字串前面有 "0x" 字首,則必須將第二個引數傳送為 0 而不是 16。
示例 1
在下面給出的程式中,我們以十六進位制字串作為輸入,並使用 int() 型別轉換方法(基數為 16)將其轉換為整數。
hex_str = "fe00" print("The given hex string is ") print(hex_str) res = int(hex_str,16) print("The resultant integer is ") print(res)
輸出
上面給出的示例的輸出為:
The given hex string is fe00 The resultant integer is 65024
示例 2
在下面給出的示例中,我們以帶有 0x 字首的十六進位制字串作為輸入,並使用 int() 方法(基數為 0)將其轉換為整數。
hex_str = "0xfa22" print("The given hex string is ") print(hex_str) res = int(hex_str,0) print("The resultant integer is ") print(res)
輸出
上面程式的輸出為:
The given hex string is 0xfa22 The resultant integer is 64034
使用 literal_eval() 方法
您可以使用 ast(抽象語法樹)庫的 literal_eval() 方法將十六進位制字串轉換為 Python 中的整數。我們必須將十六進位制字串傳遞給 literal_eval() 函式,沒有引數,該函式將十六進位制字串轉換為整數。
示例
在下面給出的示例中,我們使用 ast 庫的 literal_eval() 方法將十六進位制字串轉換為整數。
from ast import literal_eval hex_str = "0xfe00" print("The given hex string is ") print(hex_str) res = literal_eval(hex_str) print("The resultant integer is ") print(res)
輸出
上面示例的輸出為:
The given hex string is 0xfe00 The resultant integer is 65024
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP