我们有这样的:加入的元组元素 - 列表理解
lst = [('543', 'Tom', '- Jerry'), ('544', 'X-man - ', 'Hulk')]`
lst = [h+a for n,h,a in lst]
lst =[name.split(' - ') for name in lst]
我想第一,携手[1]
并在每个元组一起[2]
元素,并将它们划分在-
分裂码会起作用,但对加入他们列表理解才不是。
我们希望最终的输出是:
[('534', 'Tom, 'Jerry'), ('544', 'X-man', 'Hulk')]
有了上面的代码中,我们得到的只是:
[('Tom, 'Jerry'), ('X-man', 'Hulk')]
@EDIT
我有一个问题: 有时我的元组继续艾因只有2项是这样的(第2元组): [('534', 'Tom, 'Jerry'), ('544', 'X-man - Hulk')]
我想摆脱-
,这样从下面的列表理解我想出了这个修改后的版本: lst = [tuple(i.split(' - ') if len(tup) == 2 else tuple(i.strip(' - ') for i in tup) for tup in lst]
然而这引发invalid syntax
例外。
我很抱歉再次询问有关类似问题的人,但列表理解对我来说是一个相当新的概念,但如果我正确地完成上述工作,我会完成我的程序,因此我太急于研究整个文档现在的话题。
是的,我只是想摆脱'-'谢谢! – nutship 2013-03-10 09:30:52
@shipship如果你想剥离'-',root的解决方案更清洁 – valtron 2013-03-10 09:37:22
@ root你可以在第一篇文章中再看一遍,因为我有另一个类似的问题。 – nutship 2013-03-10 11:30:12