Python:使用列格式打印字典?

时间:2014-11-21 16:56:48

标签: python dictionary

我需要打印一个包含值

的字典
freqs = {',': 1, '8': 3, '0': 3, '6': 1, '7': 2, '!': 1, '+': 2, '#': 8, '%': 4, '.': 1, '&': 7, '/': 1, '1': 3, ')': 2, '"': 1, '-': 2, '3': 6, '5': 1, '$': 1, '2': 2, '*': 4, '4': 2, "'": 1, '9': 1, ':': 1}

这是一个字典,显示字符及其在字符串中出现的次数。我想在两列中向用户显示如下:

, (TAB) 1

8 (TAB) 3

0 (TAB) 3

等。

非常感谢任何帮助:)

3 个答案:

答案 0 :(得分:5)

freqs = {',': 1, '8': 3, '0': 3, '6': 1, '7': 2, '!': 1, '+': 2, '#': 8, '%': 4, '.': 1, '&': 7, '/': 1, '1': 3, ')': 2, '"': 1, '-': 2, '3': 6, '5': 1, '$': 1, '2': 2, '*': 4, '4': 2, "'": 1, '9': 1, ':': 1}

for k , v in freqs.iteritems(): # iterating freqa dictionary
        print k+"\t", v

<强>输出:

!   1
#   8
"   1
%   4
$   1
'   1
&   7
)   2
+   2
*   4
-   2
,   1
/   1
.   1
1   3
0   3
3   6
2   2
5   1
4   2
7   2
6   1
9   1
8   3
:   1

在print语句后使用逗号 ,在同一行中打印,而\t是用于标签。

print k+"\t", v

答案 1 :(得分:1)

如果您使用的是Python≥3.6:

freqs = {',': 1, '8': 3, '0': 3, '6': 1, '7': 2, '!': 1, '+': 2, '#': 8, '%': 4, '.': 1, '&': 7, '/': 1, '1': 3, ')': 2, '"': 1, '-': 2, '3': 6, '5': 1, '$': 1, '2': 2, '*': 4, '4': 2, "'": 1, '9': 1, ':': 1}

for k, v in freqs.items():
    print(f'{k:<4} {v}')

答案 2 :(得分:0)

for item in freqs:
     print item, freqs[item]