Python の unpack 関数と、それがフォーマット文字列をどのように使用するかを理解しようとしています。
例として、unsigned int (サイズ、4 バイト) に対応するフォーマット文字列 "I" を使用しています。
ドキュメントによると、 unpack 関数は文字列を受け取り、それをフォーマット文字列に基づいて値のリストに変換します。
http://docs.python.org/2/library/struct.html
したがって、入力値を文字列「test」として使用しました。出力は次のとおりです。
>>> import struct
>>> input="test"
>>> l = struct.unpack("I", input)[0]
>>> print l
1953719668
出力値が入力からどのように派生したかを理解しようとしています。
>>> from struct import *
>>> calcsize('I')
4
「I」のサイズは 4 バイトです。文字列 "test" には 4 文字 (4 バイト) があります。各文字を対応する 16 進 ASCII 値に変換し、リトル エンディアン順に格納しようとしましたが、上記の出力と一致しません。
どんな助けでも大歓迎です。