python - 如何在 Python3 中找到按数字顺序排列的列表中的数字?

标签 python python-3.x list

我有一个列表,像这样:

list_1 = [1,2,2,3,1,2]

我想创建另一个这样的嵌套列表:

[[1,2,2,1,2],[2,2,3,2]]

第一个嵌套列表只由 1 和 2 组成,因为按照数字顺序,2 在 1 之后,必须包含 1。 3 不在第一个嵌套列表中,因为在 1 之后是 2 而不是 3。

在第二个嵌套列表中,有 2 和 3,因为 3 在 2 之后,需要包含 2。 1 不存在,因为 2 之后没有一个。

如何在 Python 3 中实现这一点?

最佳答案

list_1 = [1,2,2,3,1,2]

m = max(list_1)
print([[i for i in list_1 if i in [j,j+1] ] for j in range(1,m)])

#[[1, 2, 2, 1, 2], [2, 2, 3, 2]]




#list_1 = [1,2,2,3,1,2,4,2,3,6,5,4]
#->[[1, 2, 2, 1, 2, 2], [2, 2, 3, 2, 2, 3], [3, 4, 3, 4], [4, 5, 4], [6, 5]]

关于python - 如何在 Python3 中找到按数字顺序排列的列表中的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50383109/

相关文章:

oop - 在 Python 中启用用户代码扩展的流行技术是什么?

python - 如何在 Python 中保持列表静态?

python - 如何更改单词中的字典元素?

c# - 查找列表中向量的平均值

python - 持续监听TCP端口

python - 不断收到 Kattis 问题的运行时错误

具有嵌套列表/元组的 Python 操作(交集、联合、重复)可能吗?

python - 有没有更有效的方法来编写合并函数?

python - 将数据框转换为列表时出错

Python找出设置最高匹配