7

これは非常に単純なはずですが、答えを見つけることができませんでした..

Python スクリプトで、USB デバイスからデータを読み込んでいます (USB マウスの x と y の動き)。単一の ASCII 文字で届きます。ord を使用して、符号なし整数 (0 ~ 255) に簡単に変換できます。しかし、符号付き整数 (-128 から 127) にしたいのですが、どうすればよいですか?

どんな助けでも大歓迎です!どうもありがとう。

4

6 に答える 6

1
from ctypes import c_int8
value = c_int8(191).value

ord() 値で ctypes を使用します - この場合は -65 にする必要があります

元。文字列データから

from ctypes import c_int8
data ='BF'
value1 = int(data, 16) # or ord(data.decode('hex'))
value2 = c_int8(value1).value

value1 は 16 進数の「BF」の 16 ビット整数表現であり、value2 は 8 ビット表現です

于 2015-12-31T21:24:31.717 に答える