2017-02-13 39 views
0

我使用Python中的套接字將整數發送到服務器。發送前我的包裝它:如何使用struct.pack打包一個變量?

values = (0, 2) 
packer = struct.Struct('I I') 
packed_data = packer.pack(*values) 

如果我想只發送一個整數? Struct.pack至少需要兩個變量。 我是一個Python新手。

回答

0

Struct.pack至少需要兩個變量。

雖然文檔顯示v1, v2, ...在兩個struct.packstruct.Struct.pack參數列表,你實際上並不提供兩個值。如果你願意,你可以提供零,但這不會很有用。

只打包一個整數,只給它一個整數。

>>> struct.pack("I", 0) 
'\x00\x00\x00\x00' 

或者

>>> packer = struct.Struct("I") 
>>> packer.pack(0) 
'\x00\x00\x00\x00'