2014-11-21 106 views
3

我需要打印包含字典值Python:使用列格式打印字典?

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 

等。

任何幫助,將不勝感激:)

回答

4
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 
0
for item in freqs: 
    print item, freqs[item] 
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}') 
+0

感謝您表示'F '{K:<4}''特技。我以前從未見過。 – bjd2385 2017-10-17 16:50:10