gpt4 book ai didi

python - 如何根据分隔符将列表拆分为子列表,类似于 str.split()?

转载 作者:太空狗 更新时间:2023-10-30 02:51:55 24 4
gpt4 key购买 nike

给定如下列表:

[a, SEP, b, c, SEP, SEP, d]

我如何将其拆分为子列表列表:

[[a], [b, c], [], [d]]

实际上我需要一个等价于 str.split() 的列表。我可以拼凑一些东西,但我似乎无法想出任何整洁和/或 pythonic 的东西。

我从迭代器获得输入,因此生成器也可以接受。

更多例子:

[a, SEP, SEP, SEP] -> [[a], [], [], []]

[a, b, c] -> [[a, b, c]]

[SEP] -> [[], []]

最佳答案

一个简单的生成器将适用于您问题中的所有情况:

def split(sequence, sep):
chunk = []
for val in sequence:
if val == sep:
yield chunk
chunk = []
else:
chunk.append(val)
yield chunk

关于python - 如何根据分隔符将列表拆分为子列表,类似于 str.split()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54372218/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com