2
整我從一個模塊接收一個字符串,它是一個長整型長十六進制字符串在Python
>>> str = hex(5L)
>>> str
'0x5L'
我現在想要的是字符串str轉換回數字(整數)
表示INT(STR,16)不會因爲L.
的工作是有辦法做到這一點沒有最後L個剝離出來的字符串?因爲字符串也可能包含一個沒有L的十六進制數?
整我從一個模塊接收一個字符串,它是一個長整型長十六進制字符串在Python
>>> str = hex(5L)
>>> str
'0x5L'
我現在想要的是字符串str轉換回數字(整數)
表示INT(STR,16)不會因爲L.
的工作是有辦法做到這一點沒有最後L個剝離出來的字符串?因爲字符串也可能包含一個沒有L的十六進制數?
你甚至可以只使用:
>>> str = hex(5L)
>>> long(str,16)
5L
>>> int(long(str,16))
5
>>>
使用str.rstrip
;它適用於兩種情況:
>>> int('0x5L'.rstrip('L'),16)
5
>>> int('0x5'.rstrip('L'),16)
5
或生成字符串是這樣的:
>>> s = '{:#x}'.format(5L) # remove '#' if you don' want '0x'
>>> s
'0x5'
>>> int(s, 16)
5
感謝,這正是我想要的。 –