【发布时间】:2016-11-12 20:50:46
【问题描述】:
在 Python 结构中打包整数后,即使它只包含一项,解包也会产生一个元组。为什么解包会返回一个元组?
>>> x = struct.pack(">i",1)
>>> str(x)
'\x00\x00\x00\x01'
>>> y = struct.unpack(">i",x)
>>> y
(1,)
【问题讨论】:
-
如果结构包含多个项目,那么你返回什么?一般来说,函数最好只返回一种类型(因此调用者不必根据是一个项目还是两个项目或......)
-
我明白了...这是打包/解包 int 的唯一/正确/Pythonic 方式吗?
-
在最近的python版本中有
int.from_bytes和int.to_bytes
标签: python struct tuples pack unpack