Python 如果元素在列表中的顺序是递增的,如何在列表中添加元素?

Python 如果元素在列表中的顺序是递增的,如何在列表中添加元素?,python,python-3.x,list,python-2.7,Python,Python 3.x,List,Python 2.7,我在练习python问题,遇到了这个问题,如果元素的顺序是递增的,我必须在列表中添加元素,并将它们存储在列表中 例如: my_list=[2223,6,4,10,12,15] 从2到223,列表在增加,然后从223到6,列表在减少。因此,总和为2+223=225 从223到6,6到4,列表在减少,从4到10,10到12,12到15,列表在增加,所以总和是4+10+12+15=41 因此,我的汇总列表将是[225,41] 我尝试的代码: list1 = [2,223,6,4,10,12,15]

我在练习python问题,遇到了这个问题,如果元素的顺序是递增的,我必须在列表中添加元素,并将它们存储在列表中

例如:

my_list=[2223,6,4,10,12,15]
从2到223,列表在增加,然后从223到6,列表在减少。因此,总和为2+223=225

从223到6,6到4,列表在减少,从4到10,10到12,12到15,列表在增加,所以总和是4+10+12+15=41

因此,我的
汇总列表将是
[225,41]

我尝试的代码:

list1 = [2,223,6,4,10,12,15]
current_el = list1[0]
suml=list()
sum1=current_el
for i in list1[list1.index(current_el)+1:]:
    while current_el < i:
        print(i)
        sum1=sum1+i
        current_el = list1[list1.index(current_el)+1]
        print(current_el)
        suml.append(sum1)
        
print(suml)
list1=[2223,6,4,10,12,15]
当前值=列表1[0]
suml=list()
sum1=电流
对于列表1中的i[list1.index(current_el)+1:]:
当电流
这更简单:

number=[2223,6,4,10,12,15]
累计=[]
对于范围(1,len(数字))中的i:
如果数字[i]>数字[i-1]:
如果i==1或数字[i-1]数字[i-1]
我们检查一个数字是否大于上一个(增加),并使用
累计[-1]+=numbers[i]
将该数字添加到上一个累计值。现在我们只缺少在累积列表中创建新元素的逻辑,这是当我们找到一个大于上一个但上一次迭代没有通过这个条件的数字,或者如果没有可以检查的上一对

另一个与您尝试的解决方案更相似的不同解决方案是分两步进行。第一步是创建一个列表,列表中的数字按升序分组。然后丢弃单个成员的这些组(您不认为6是升序组),然后将这些组添加到一起

number=[2223,6,4,10,12,15]
组=[[2]]
对于数字中的数字[1:]:
如果编号>组[-1][-1]:
组[-1]。追加(编号)
其他:
groups.append([编号])
累计=[]
对于组中的组:
如果len(组)==1:
持续
累计追加(总和(组))
这更简单:

number=[2223,6,4,10,12,15]
累计=[]
对于范围(1,len(数字))中的i:
如果数字[i]>数字[i-1]:
如果i==1或数字[i-1]数字[i-1]
我们检查一个数字是否大于上一个(增加),并使用
累计[-1]+=numbers[i]
将该数字添加到上一个累计值。现在我们只缺少在累积列表中创建新元素的逻辑,这是当我们找到一个大于上一个但上一次迭代没有通过这个条件的数字,或者如果没有可以检查的上一对

另一个与您尝试的解决方案更相似的不同解决方案是分两步进行。第一步是创建一个列表,列表中的数字按升序分组。然后丢弃单个成员的这些组(您不认为6是升序组),然后将这些组添加到一起

number=[2223,6,4,10,12,15]
组=[[2]]
对于数字中的数字[1:]:
如果编号>组[-1][-1]:
组[-1]。追加(编号)
其他:
groups.append([编号])
累计=[]
对于组中的组:
如果len(组)==1:
持续
累计追加(总和(组))

6号怎么样?从223忽略到6的逻辑是什么数字正在减少。。从6到4,它也在减少。6呢?从223忽略到6的逻辑是什么数字正在减少。。从6降到4也在下降谢谢。。您提供的第一个解决方案非常好。。我不这么认为谢谢你。。您提供的第一个解决方案非常好。。我不这么认为