2024-04-25 03:41:08 发布
网友
假设你有清单
`[1, 0, -1, 0, ';', 2, 0, 0, -1, ';', 0, 1, 0, -1, ';', 0, 1, -2, 0, ';', 0, 3, -6, 0, ';']`
什么是最简单的方法来修剪它,说第二次出现“;”,输出
[1, 0, -1, 0, ';', 2, 0, 0, -1, ';', 0, 1, 0, -1, ';', 0, 1, -2, 0]
def get_part(lst,sep=';'): out = [] for i in lst: if i == sep: yield out out = [] else: out.append(i)
(您已经从您的previous question中获得)。在
现在,要修剪它,我们需要转换为一个列表:
但我之前的建议仍然有效。更好的数据结构是列表列表。在
如果您有一个列表作为输入,您可以尝试查找";"的索引,然后从中进行操作:
";"
>>> L = [1, 0, -1, 0, ';', 2, 0, 0, -1, ';', 0, 1, 0, -1, ';', 0, 1, -2, 0, ';', 0, 3, -6, 0, ';'] >>> idx = [i for (i,v) in enumerate(L) if v == ";"] >>> L[:idx[-2]] [1, 0, -1, 0, ';', 2, 0, 0, -1, ';', 0, 1, 0, -1, ';', 0, 1, -2, 0, ';', 0, 3, -6, 0, ';']
(您已经从您的previous question中获得)。在
现在,要修剪它,我们需要转换为一个列表:
^{pr2}$但我之前的建议仍然有效。更好的数据结构是列表列表。在
如果您有一个列表作为输入,您可以尝试查找
";"
的索引,然后从中进行操作:相关问题 更多 >
编程相关推荐