如何在解包作业的左侧放置一个空列表?

2024-04-25 13:39:18 发布

您现在位置:Python中文网/ 问答频道 /正文

this PyCon talk的中途,演讲者键入了一行非常不寻常的代码:

can_recv, can_send, [] = select(recv_wait, send_wait, [])

一切进展顺利,但到了最后,当一位听众问他为什么要在开箱作业的左边写一个空的单子时,他感到非常惊讶。”是我干的吗?”当他找到它时,他说他打算使用一个_,表示一个一次性变量,他似乎根本不知道为什么这样做会奏效。你知道吗

有人能解释一下这里发生了什么,它是如何平稳运行的,而不是因为运行时错误而崩溃的吗?你知道吗


Tags: 代码send键入作业thisselectcan单子
1条回答
网友
1楼 · 发布于 2024-04-25 13:39:18

只要列表长度匹配,就可以将其解包到列表中。例如:

can_recv, can_send, [a, b] = 1, 2, [3, 4]

将分配a=3和b=4。你知道吗

那堂课的例子是空列表的退化例子。顺便说一句,你也可以用右边的空元组或空字典来实现。你知道吗

相关问题 更多 >

    热门问题