字典只显示键和计数

时间:2018-08-01 20:30:09

标签: python string dictionary

我有一本有两个键的字典。

my_dict = {"Hello": {'count': 2, 'distance': 6}, "Clear": {'count': 8, 'distance': 8}}

我正在使用

a = ''.join(''.join((k, str(v))) for k,v in my_dict.items())

将其转换为要打印的字符串:

"Hello" {'count': 2, 'distance': 6L} "Clear" {'count': 8, 'distance': 9L} 

我想知道如何才能得到钥匙和数量 打印:

"Hello" - count: 2
"Clear" - count: 8

3 个答案:

答案 0 :(得分:2)

如果d

>>> d = {"Hello": {'count': 2, 'distance': 6}, "Clear": {'count': 8, 'distance': 8}}

然后

>>> x = '\n'.join('{k} - {n}: {v}'.format(k=k, n='count', v=v['count']) for k,v in d.items())
>>> print(x)

Hello - count: 2
Clear - count: 8

答案 1 :(得分:1)

假设您有嵌套的字典,则可以将print与未打包的生成器表达式一起使用。 str.format是从字典中提取相关数据的一种方法:

my_dict = {"Hello": {'count': 2, 'distance': 6},
           "Clear": {'count': 8, 'distance': 8}}

print(*('{} - count: {}'.format(i, d[i]['count']) for i in d), sep='\n')

Hello - count: 2
Clear - count: 8

答案 2 :(得分:0)

如果我理解正确,那么类似的事情就可以了,

keys = list(my_dict.keys())

for key in keys:
    s = '"' + key
    s += '" - count: ' + str(my_dict[key]['count'])
    print(s)

这将打印您描述的列表。