我需要在Python3中统一两个列表,其中可以存在重复项,并且对于其中一组,结果列表将在两个列表中包含尽可能多的最大值.示例可能会澄清它:
[1,2,2,5]( some operator)[2,5,5,5,9]=[1,2,2,5,5,5,9]
Run Code Online (Sandbox Code Playgroud)
想法?
int*_*jay 13
你可以使用这个collections.Counter类:
>>> from collections import Counter
>>> combined = Counter([1,2,2,5]) | Counter([2,5,5,5,9])
>>> list(combined.elements())
[1, 2, 2, 5, 5, 5, 9]
Run Code Online (Sandbox Code Playgroud)
它作为multiset(无序集合,每个元素可以多次出现).该|运营商为您提供了多集,其中的每个元素出现最多(apperances_in_counter1,appearances_in_counter2)时代的工会.
这个类是在Python 2.7和3.1中添加的.
| 归档时间: |
|
| 查看次数: |
1339 次 |
| 最近记录: |