python-3.x - 从具有重复元素的列表中提取元素
问题描述
如何获取列表的子集,以使特定长度的组合仅出现一次。
例如。a=[1, 1, 2, 3, 4, 4, 5, 5]
从a
我想获得类似的东西:
[(1,2),[1,3,4,4,5,5]],[(1,2,3),[1,4,4,5,5],...
我尝试使用组合,但大多数结果与问题无关。任何人都可以帮忙吗?
解决方案
你提供的信息很少,但这是我理解的一个镜头
a=[1, 1, 2, 3, 4, 4, 5, 5]
result=[]
for i in range(1,7):
b=a.copy()
sub_tuple=[]
for j in range(1,i):
x=b.pop(b.index(j))
sub_tuple.append(x)
result.append([tuple(sub_tuple), b])
print(result[2:])
>>> [[(1, 2), [1, 3, 4, 4, 5, 5]], [(1, 2, 3), [1, 4, 4, 5, 5]], [(1, 2, 3, 4), [1, 4, 5, 5]], [(1, 2, 3, 4, 5), [1, 4, 5]]]
推荐阅读
- python-3.x - 自动化脚本在本地正常工作,但不适用于容器
- javascript - VUE如何替换json变量
- php - 如何更改 Swagger UI 中生成的 APi Platform 中的 SQL 查询
- c# - C# 中的 SQL 参数化,使用 SQL 声明的变量
- dart - 为什么这个函数最终返回?
- github - 使用 GitHub API 提交的最接近标签
- r - 绑定数组的维度
- split - New Line Arduino 拆分字符串 - GSM 模块响应
- opencv - Gtk-WARNING **:无法打开显示:来自 gcp ubuntu
- c - 我试图实现链表以在节点中存储学生详细信息