python 如何 列印負數為16進位制 無符號數?
阿新 • • 發佈:2018-12-23
2011-12-30
如,想將-1列印成0xffffffff,結果是:
>>> a=-1
>>> hex(a)
'-0x1'
>>> print "%u"%a
-1
>>> print "%x"%a
-1
>>> print hex(a)
-0x1
沒有辦法將其列印成0xffffffff。列印和轉化辦法,可以定義hex2函式進行轉換:
>>> print hex(a&0xffffffff) 0xffffffffL >>> b=-2 >>> print "0x%08x"%(b&0xffffffff) 0xfffffffe >>> def hex2(a): ... return a>0 and hex(a) or hex(a&0xffffffff) ... >>> hex2(a) '0xffffffffL' >>> hex2(234) '0xea' >>> hex2(b) '0xfffffffeL'
如非註明轉載, 均為原創. 本站遵循知識共享CC協議,轉載請註明來源