编辑:这不是如何获取列表元素的所有可能组合的精确重复?
本主题是关于查找唯一组合,而另一主题是关于查找所有组合。
如果我有python列表:
L = [1,2,3,4]
从以下列表中获取3个元素的所有可能 唯一组合 的最佳方法是什么:
["1,2,3", "1,2,4", "2,3,4", "3,4,1"]
组合中元素的顺序无关紧要。例如,"1,2,3"
和"3,2,1"
将被视为相同的组合。
我可能可以编写一些循环来执行此操作,但我认为可能会有一个单行代码可以执行相同操作。
您需要itertools.combinations
:
>>> from itertools import combinations
>>> L = [1, 2, 3, 4]
>>> [",".join(map(str, comb)) for comb in combinations(L, 3)]
['1,2,3', '1,2,4', '1,3,4', '2,3,4']
问题内容: 假设我有3个列表:[‘q’,’w’],[‘a’,’s’],[‘z’,’x’]。如何从这些列表中获取可能的组合列表?所以我得到一个列表[[‘q’,’a’,’z’],[‘q’,’s’,’z’]]等。我为两个方法创建了一个方法,但对N个列表却找不到一个方法: 我发现这是由番石榴的Sets.cartesianProduct完成的。 问题答案: 您需要N个嵌套循环,这使它变得很难。 您可以使用递
问题内容: 我想从以下列表中获取唯一值: 我需要的输出是: 此代码有效: 我应该使用更好的解决方案吗? 问题答案: 首先正确声明你的列表,以逗号分隔。你可以通过将列表转换为一组来获得唯一值。 如果进一步将其用作列表,则应执行以下操作将其转换回列表: 另一种可能(可能更快)的可能性是从头开始使用集合而不是列表。然后你的代码应为: 正如已经指出的那样,集合不保持原始顺序。如果需要,则应查找有序集合实现
问题内容: 如果我有两个清单 什么是获取熊猫数据框的最优雅的方式,如下所示: 注意,第一列是索引。 问题答案: 使用于:
我想要一个列表,它是列表元素列表的组合,例如:我的输入 输出应该是 非常感谢您的帮助。
假设我有一个由n个字符串列表组成的列表: result->包含所有输出列表(所有组合) current->是当前的组合 用上述相同示例调用此函数时的输出:
我试图在玩家发牌后从套牌中拿走一张牌,这样那些牌就不会再发牌了。 但这是我的命令错误: