我们有这个:
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')]
@编辑
我还有另一个问题:有时我的元组仅包含 2 个这样的项目(第二个元组):
[('534', 'Tom, 'Jerry'), ('544', 'X-man - Hulk')]
我想通过下面的列表理解摆脱-
so 我想出了这个修改后的版本:
lst = [tuple(i.split(' - ') if len(tup) == 2 else tuple(i.strip(' - ') for i in tup) for tup in lst]
但是会引发invalid syntax
异常。
我很抱歉大家再次询问类似的问题,但列表理解对我来说是一个相当新的概念,但如果我在上面做对了,我将完成我的程序,所以我太不耐烦了,现在无法研究关于该主题的整个文档.