l1 = ['a','b','c','e']l2 = ['a','d']from collections import Counterc1 = Counter(l1)c2 = Counter(l2)# Intersection c1 & c2>>> Counter({'b': 3,'c': 2,'a': 1})
什么成语可以将Collections Counter分配到列表列表中,每个列表在每个列表中只出现一次?
[['a','c'],['b',['b']]解决方法 不知道你是否在寻找单线,但这是一个单线:
码:
[sorted(y for y in z if y is not None) for z in it.izip_longest(*[[k] * l for k,l in c.items()])]
怎么样?
这里有两件关键的事情
> [k] * l给出一个计数器键列表,它是计数器值长
> izip_longest()会将列表添加到其他列表中,填充填充为none
测试代码:
from collections import Counterc = Counter({'b': 3,'a': 1})import itertools as itprint([sorted(y for y in z if y is not None) for z in it.izip_longest(*[[k] * l for k,l in c.items()])])
结果:
[['a',['b']]总结
以上是内存溢出为你收集整理的python – 我可以将计数器反转到没有倍数的列表列表吗?全部内容,希望文章能够帮你解决python – 我可以将计数器反转到没有倍数的列表列表吗?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)