数组中的6个元素但仅显示为1

时间:2014-06-03 22:17:57

标签: python arrays

我有一个数组:

[4, 4, 86, 59, 21, 38]

它作为6个元素,

CellNetInfopkt += struct.pack("b" * len(this_or_address_send_array), this_or_address_send_array)

这段代码分配了一个" b"对于数组中的每个元素," b" s的数量是正确的,但代码的第二部分,其中每个元素分配给每个b不起作用我得到错误:

 CellNetInfopkt += struct.pack("b" * len(this_or_address_send_array), this_or_address_send_array)
struct.error: pack expected 6 items for packing (got 1)
似乎虽然它将整个数组作为单个项目而不是6,所以问题是我如何配置它以便将它作为6个不同的值?

由于

1 个答案:

答案 0 :(得分:2)

试试这个:

CellNetInfopkt += struct.pack("b" * len(this_or_address_send_array), *this_or_address_send_array)
#  Notice the "*"                                                   ^^^

这称为"unpacking" argument lists