使用for循环格式化字典的其他方法

时间:2018-11-21 20:11:43

标签: python dictionary for-loop

所以我一直在寻找如何将字典dictionary = {'hello':'1', 'world' : '2'} 打印到终端/控制台中,如下所示:

  

你好:1

     

世界:2

一种方法是简单地运行一个for循环:

for i in dictionary:
    print(i + ' ' + ":" + " " + dictionary[i])

,而且效果很好,但是,还有另一种方法吗?我不明白循环如何知道i是键,而dictionary[i]是值...如果有人可以解释它是如何工作的,或者提供了一种更好的方法来打印我想要的内容,上面的blockquote将不胜感激!

2 个答案:

答案 0 :(得分:2)

在解决方案中,当您执行以下操作时:for i in dictionary:for i in dictionary.keys():相同,也就是说,默认情况下,循环遍历字典中的。话虽如此,我认为这是更惯用的:

for key, value in dictionary.items():
    print("{} : {}".format(key, value))
  • 我们使用items()方法同时检索键和值。
  • 字符串格式是通过format()方法完成的,并且{}是占位符,将由传递的参数替换。

答案 1 :(得分:0)

您可能正在寻找dictionary.items(),它返回一串礼拜堂(键,值)。您可以编写如下的for循环:

for key, value in dictionary.items():
     # do something 

还有一些方法只获取要迭代的值或键,这是通过dictionary.values()dictionary.keys()完成的。

您的for循环所做的是遍历键,而您的dictionary[i]只是常规的“为键i获取相应的值”调用。