문제

나는 Python에서 TF2 배낭 뷰어를 만들고 있으며, 32 개의 서명되지 않은 인벤토리 토큰이 있습니다.처음 16 비트는 나를 위해 중요하지 않습니다.C의 일반적인 접근 방식은

와 같은 것입니다.
(a<<16)>>16
.

지난 16 비트를 얻으려면.그러나 파이썬은 C가 아니며 위의 작업이 작동하지 않습니다.파이썬 이이 변수에 대해 Int32를 사용해야 하는지를 어떻게 지정합니까?

도움이 되었습니까?

해결책

비트 및 연산자 (&)를 사용할 수 있습니다.

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

다른 팁

배열

를 사용할 수 있습니다.
array.array('H', [10])
.

는 1 개의 부호없는 짧은 단어의 배열을 만듭니다.(몇 년 전 나는 배열을 결합한 Python에서 HW 드라이버를 썼습니다. struct

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top