Raj*_*eev 4 python string tuples
我有以下元组.我想构建一个输出如输出中所述输出的字符串.我想要计算对应于'a'的所有元素,即有多少k1出现了'a'等等.什么是最简单的方法做这个
a=[('a','k1'),('b','k2'),('a','k2'),('a','k1'),('b','k2'),('a','k1'),('b','k2'),('c','k3'),('c','k4')]
Run Code Online (Sandbox Code Playgroud)
输出应该在字符串输出=""
a k1 3
a k2 1
b k1 1
b k2 3
c k3 1
c k4 1
Run Code Online (Sandbox Code Playgroud)
使用以下Counter课程collections:
>>> a = [('a', 'k1'), ('b', 'k2'), ('a', 'k2'), ('a', 'k1'), ('b', 'k2'), ('a', 'k1'), ('b', 'k2'), ('c', 'k3'), ('c', 'k4')]
>>> from collections import Counter
>>> c = Counter(a)
Counter({('b', 'k2'): 3, ('a', 'k1'): 3, ('a', 'k2'): 1, ('c', 'k3'): 1, ('c', 'k4'): 1})
Run Code Online (Sandbox Code Playgroud)
您可以使用c.items()迭代计数:
>>> for item in c.items():
... print(item)
...
(('a', 'k2'), 1)
(('c', 'k3'), 1)
(('b', 'k2'), 3)
(('a', 'k1'), 3)
(('c', 'k4'), 1)
Run Code Online (Sandbox Code Playgroud)
上面的代码是Python 3. Counter该类是Python 2.7中的新增功能.您现在可以按所需顺序重新排列项目,并在需要时将它们转换为字符串.
| 归档时间: |
|
| 查看次数: |
3564 次 |
| 最近记录: |