gpt4 book ai didi

python - 根据符号变化创建列表

转载 作者:太空宇宙 更新时间:2023-11-03 14:40:22 24 4
gpt4 key购买 nike

我在一列中有 excel 数据( float ),其中每几百行发生 20 次 sing 变化。该列表有几千行长,但简单化后看起来像这样 [5, 4, 3, 2, 1, -5, -4, -3, -2, -1, 5, 4, 3, 2, 1, -5, ...].

我需要包含所有数字的列表,直到发生符号更改为止,然后开始一个新列表,直到下一次符号更改。因此,总的来说,我希望返回尽可能多的列表,因为符号会发生变化。我需要那些来进行数值积分。不过我可以做到...

你能给我一个像上面这样的短数组的例子吗?我真的不在乎它是将结果作为函数的返回值还是定义了新变量。无论是更简单还是更优雅。

谢谢大家的帮助。

最佳答案

假设你想按符号分组,你可以使用itertools.groupby :

from itertools import groupby

data = [5, 4, 3, 2, 1, -5, -4, -3, -2, -1, 5, 4, 3, 2, 1, -5]


def groupby_sign(lst):
return [list(group) for _, group in groupby(lst, key=lambda x: x < 0)]

result = groupby_sign(data)
print(result)

输出

[[5, 4, 3, 2, 1], [-5, -4, -3, -2, -1], [5, 4, 3, 2, 1], [-5]]

关于python - 根据符号变化创建列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53835848/

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