首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用python列表将连续5次减少为一次

如何使用python列表将连续5次减少为一次
EN

Stack Overflow用户
提问于 2019-01-29 23:08:17
回答 1查看 40关注 0票数 0

使用python时,如果我想将连续的5条缩小到一个单独的,在一个列表中:如何删除“4一个,但仍然保留我的原始索引”?

代码语言:javascript
复制
for i in list1:
if list1[counter] == 1:
    if list1[index_begin+1:index_begin+5].count(1)=4:
        print("Delete the last four digits")
        del list1[index_begin+1:index_begin+5]
    else:
        print("There is no match")
index_begin+=1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-30 00:02:02

因此,我所做的就是使用另一个列表,在其中我将我希望从list1中得到的值附加到其中,因此我的名字是resultList。

这样,我就不用担心原始列表的长度会改变,然后很难跟踪索引。

另外,通过使用while循环,它允许我更改我们在list1中查看的当前索引,i+=4允许我们跳过其他4个索引,然后继续列表的其余部分。

如果您愿意,可以将它转换为一个函数,允许您重用它,并按您的意愿多次发送列表。

希望这是有意义的,并有所帮助:)

代码语言:javascript
复制
list1 = [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1]
resultList = []
i = 0

while i < len(list1):
    if list1[i] == 1:
        if list1[i+1:i+5].count(1) == 4:
            resultList.append(1);
            i += 4
        else:
           resultList.append(list1[i])
    else:
        resultList.append(list1[i])

    i+=1
    print(i)

print(resultList)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54430988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档