2014-01-09 90 views
2

我在Python中製作一個TF2揹包查看器,並且我有一個32位無符號長的庫存標記。前16位對我來說並不重要。 C中的常用方法將類似於在Python中指定變量

(a<<16)>>16 

得到最後的16位。但是Python不是C,而且它的上面的操作不起作用。我該如何指定Python應該使用int32作爲這個變量?

回答

4

您可以使用位AND運算符(&):

>>> 0x12345678 & 0xffff 
22136 
>>> hex(_) 
'0x5678' 
+0

嗯,還挺工作...你能解釋一下我爲什麼 – RomaValcer

+0

@RomaValcer,請參見['位運算 - 和'維基百科頁面] (http://en.wikipedia.org/wiki/Bitwise_operation#AND) – falsetru

0

您可以使用array

array.array('H', [10]) 

將創建1個符號短字的陣列。 ?(幾年前,我已經用Python寫的一個硬件驅動器相結合arraystruct