私は次のものを持っています:
ビットストリームから 30 ビットを読み取ります。
MMSI = b.readlist('uint:30')
値が高くなる場合を除いて、これは正常に機能しているようです。
MMSI = b.readlist('uint:30')
p = 972128254
# repr(MMSI)[:-1]
print p
print "MMSI :"
print MMSI
if MMSI == p:
上記のコードは次を出力します。
972128254
MMSI :
[972128254L]
if MMSI ==p: 全体がスキップされるのは、何らかの理由で等しくないためです。値が max.int よりもはるかに低い理由がわかりません。
>>> import sys
>>> sys.maxint
2147483647
uint ではなく Long が返される理由がわかりません。返される値が 244123456 の場合、それは魅力的に機能します。