2012-12-15 11 views

答えて

10

第一の変形は単一要素のタプルを返します:

In [13]: crc = struct.unpack('>i', '0000') 

In [14]: crc 
Out[14]: (808464432,) 

値を取得するには、crc[0]を記述する必要があります。

第二の変形crc代わりのcrc[0]を書くためにあなたを可能にする、タプルをアンパック:

In [15]: (crc,) = struct.unpack('>i', '0000') 

In [16]: crc 
Out[16]: 808464432 
0

コンマは、crcがタプルの一部であることを示します。 (興味深いことに、Pythonのタプルを示すのは括弧ではなくコンマです)(crc,)は要素が1つのタプルです。

crc = struct.unpack('>i', data) 

crcをタプルにします。

(crc,) = struct.unpack('>i', data) 

タプルの最初の(そして唯一の)要素の値にcrcを割り当てます。

0

(crc,)が1組と考えられています。

2

unpackメソッドは、値のタプルを返します。説明する構文では、タプルの最初の値を変数crcに直接ロードできますが、最初の例ではタプル全体への参照があり、後でcrc[1]をスクリプトに記述して最初の値にアクセスする必要があります。

基本的に戻り値の1つだけを使用したい場合は、このメソッドを使用して1つの変数に直接ロードできます。

関連する問題