【发布时间】:2020-03-22 04:32:03
【问题描述】:
在下面的代码中,我使用 unpack() 从字符串中准备一些字节:
# unpack two bytes
byte1, byte2 = "ABCDEFG".unpack("CC")
# unpack one byte
byte3 = "ABCDEFG".unpack("C")
当我悬停在byte1 上时,我看到65,当我悬停在byte2 上时,我看到66,但是当我悬停在byte3 上时,我看到[0] = 65。这是为什么呢?
【问题讨论】:
-
@Yule 是 vscode,如果这很重要的话
-
要查看发生了什么,请尝试
byte1, byte2 = [ 65, 66 ]并将鼠标悬停在变量上然后... -
@Arkku 这基本上就是现在正在发生的事情。问题是因为第二个示例没有解构结果,所以它只是正常返回的数组。
-
@Arkku 但这并不能解释任何事情——OP 在问他们为什么不同,这是让 OP 感到困惑的第二个例子。