首页 > 解决方案 > 如何在 Python 中以特定方式重新组织列表

问题描述

所以,我想要做的是,如果你有以下列表:

example_list=['This', 'is', 'QQQQQ', 'an', 'QQQQQ', 'example', 'list', 'QQQQQ', '.']

我希望它被重组为:

example_list=['This is', 'an', 'example list', '.']

注意 QQQQQ 是如何被用作占位符的。所以,基本上我希望 QQQQQ 之间的所有内容都成为一个列表元素。我怎么做?

我看过其他关于 join() 函数的帖子,但我遇到的问题是如果有超过 1 个单词,则在两者之间放置一个空格。

标签: pythonlistlist-manipulation

解决方案


使用简单的迭代。

前任:

example_list=['This', 'is', 'QQQQQ', 'an', 'QQQQQ', 'example', 'list', 'QQQQQ', '.']

res = [[]]
for i in example_list:
    if i == "QQQQQ":
        res.append([])
    else:
        res[-1].append(i)
print([" ".join(i) for i in res])

输出:

['This is', 'an', 'example list', '.']

推荐阅读