我可以看到 s1,s2,s3 都会导致相同的结果。 (给出每个元组的2'元素)
train = ((1, 'a'), (2, 'b'), (3, 'c'), (4, 'd'), (5, 'e') )
s1 = tuple([x for s, x in train])
s2 = tuple([x for ss, x in train])
s3 = tuple([x for sss, x in train])
答案 0 :(得分:1)
如果您使用此表单:
train = ((1, 'a'), (2, 'b'), (3, 'c'), (4, 'd'), (5, 'e') )
s1 = tuple([x for s, x in train])
s2 = tuple([x for s, x in train])
s3 = tuple([x for s, x in train])
然后s1 == s2 == s3
。因为s, ss, sss
只是保存元组第一个值的名称。
答案 1 :(得分:0)
s
,ss
和sss
只是变量名称。其余的代码是相同的,因为逻辑是为您提供不同的结果而不改变变量的名称。
答案 2 :(得分:0)
对于同一件事,他们只是不同的名字。您可以将s
替换为a
,将x
替换为b
,或者您选择的任何其他变量名称,结果仍然相同。第一个变量(无论你给它的名字)将获得元组的第一个元素,而第二个变量将获得第二个值。之后,您只需将x
' s,即每个元组的第二部分放入新列表中。
答案 3 :(得分:0)
s,ss,sss是您在列表推导中创建的临时变量。它们基本上以相同的方式工作并包含相同的值