2013-05-02 93 views
5

我正在尋找一種將numpy中的字符串數組轉換爲它們以十六進制表示的整數的方法。所以換句話說,數組版本:將numpy字符串數組轉換爲以16爲底的整數

int("f040", 16) 

我可以通過調用arr.astype(numpy.int32)轉換爲字符串數組爲整數基地-10,但我看不到任何明顯的方法來轉換他們基地16。有誰知道一種方法來做到這一點?

回答

2
ar = ['f040', 'deadbeaf'] 
int_array = [int(a, 16) for a in ar] 
print int_array 

輸出:

[61504,3735928495L]

+1

你不需要用加 '0x' – sizzzzlerz 2013-05-02 13:51:33

+0

@sizzzzlerz前綴答:在我的答案固定,感謝 – 2013-05-02 13:53:08

+1

我知道列表解析可以解決問題,我想知道numpy本身是否有一種「快速」方法,類似於astype。 – dpitch40 2013-05-02 14:22:12