How to pick consecutive numbers from a list(如何从列表中挑选连续数字)
本文介绍了如何从列表中挑选连续数字的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个列表,其中实际上包含另一个列表的索引。因此,我想从该列表中挑选出连续的数字
index_list=[3,4,8,9,35,36,37]
我希望其输出为
[3:4], [8:9], [35:37]
---------------------MOTIVE:---------------------
我还有另一个单词主列表,它有80个单词。
master_list=['was,'it','to,'go,'I'.........]
因此,连续的索引将帮助我从MASTER_LIST中挑选出所需的单词
master_list[3:4], master_list[8:9], master_list[35:37]
推荐答案
使用更泛化的方式:
i = 0
final_list = []
flag = True
while flag:
temp_list = [index_list[i]]
while (i < len(index_list)-1) and (index_list[i+1] - index_list[i]==1):
i+=1
temp_list.append(index_list[i])
final_list.append(temp_list)
i+=1
if i >= len(index_list):
flag=False
print(final_list)
input : [3,4,8,9,35,36,37]
ouptut : [[3, 4], [8, 9], [35, 37]]
input : [1,3,5,7,9]
output : [[1, 1], [3, 3], [5, 5], [7, 7], [9, 9]]
更新:
new_list = []
for i, j in final_list:
new_list.append(list(range(i,j+1)))
print(new_list)
input: [3, 4, 5, 16, 17, 31, 32, 33, 34]
output : [[3, 4, 5], [16, 17], [31, 32, 33, 34]]
这篇关于如何从列表中挑选连续数字的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:如何从列表中挑选连续数字


猜你喜欢
- pytorch 中的自适应池是如何工作的? 2022-07-12
- padding='same' 转换为 PyTorch padding=# 2022-01-01
- 分析异常:路径不存在:dbfs:/databricks/python/lib/python3.7/site-packages/sampleFolder/data; 2022-01-01
- 如何将一个类的函数分成多个文件? 2022-01-01
- 使用Heroku上托管的Selenium登录Instagram时,找不到元素';用户名'; 2022-01-01
- python-m http.server 443--使用SSL? 2022-01-01
- 如何在 Python 的元组列表中对每个元组中的第一个值求和? 2022-01-01
- 沿轴计算直方图 2022-01-01
- 如何在 python3 中将 OrderedDict 转换为常规字典 2022-01-01
- python check_output 失败,退出状态为 1,但 Popen 适用于相同的命令 2022-01-01