2024-04-20 05:16:38 发布
网友
假设有以下元组:
test = ((1, '2'), (3, '4'), ('5', '6'))
如果要提取每个元组的第二个元素,我将执行以下操作:
我还看到:
secondonly = tuple([x for word, x in test])<;----**<;---这是如何工作的?在
secondonly = tuple([x for word, x in test])
有人能给我解释一下带**的线是如何产生好结果的吗?谢谢
这与您在第一个示例中所做的类似-“xforxinblah”构建了for循环中累积的所有x的列表。在本例中,for循环包括将“test”的每个元素分配给“word,x”,这会自动将元组解压到这两个变量中,因此“word”和“x”分别取每个元组的第一个和第二个元素。这意味着“x”总是引用元组的第二个元素,因此循环根据需要构建第二个元素的列表。在
test包含3个长度为2的元组。for word, x in test(相当于for (word, x) in test)将每个元组的第一个元素解压为word,第二个元素为x。因此,[x for (word, x) in test]每隔一个元素(x)创建一个列表。在
for word, x in test
for (word, x) in test
[x for (word, x) in test]
这与您在第一个示例中所做的类似-“xforxinblah”构建了for循环中累积的所有x的列表。在本例中,for循环包括将“test”的每个元素分配给“word,x”,这会自动将元组解压到这两个变量中,因此“word”和“x”分别取每个元组的第一个和第二个元素。这意味着“x”总是引用元组的第二个元素,因此循环根据需要构建第二个元素的列表。在
test包含3个长度为2的元组。
for word, x in test
(相当于for (word, x) in test
)将每个元组的第一个元素解压为word,第二个元素为x。因此,[x for (word, x) in test]
每隔一个元素(x)创建一个列表。在相关问题 更多 >
编程相关推荐