相关疑难解决方法(0)

如果某些条件,则合并列表元素

如果满足某些条件,如何组合列表的元素.

我见过关于组合列表元素的帖子,但没有一些条件.

假设我有一个包含单词列表的列表:

words = [
    ['this','that!','riff','raff'],
    ['hip','hop!','flip!','flop'],
    ['humpty','dumpty!','professor!','grumpy!']
]
Run Code Online (Sandbox Code Playgroud)

如何仅组合包含!?的元素?

例如,输出将如下所示:

[['this', 'that!', 'riff', 'raff'],
 ['hip', 'hop!, flip!', 'flop'],  # 1,2 are now combined
 ['humpty', 'dumpty!, professor!, grumpy!']]   # 1,2,3 are now combined
Run Code Online (Sandbox Code Playgroud)

我试过这个:

for word in words:
    word = ', '.join(i for i in word if re.search('!',str(i)))
    print word
Run Code Online (Sandbox Code Playgroud)

但得到了:

that!
hop!, flip!
dumpty!, professor!, grumpy!
Run Code Online (Sandbox Code Playgroud)

谢谢.

python list python-2.7

8
推荐指数
1
解决办法
1566
查看次数

标签 统计

list ×1

python ×1

python-2.7 ×1