首页 > 解决方案 > 我必须将字典打印成不同的行我该怎么做

问题描述

所以我有一个代码,我需要将字典打印成不同的行,并且它一直在我不知道的最后一行给出我的错误。我是编程新手,所以需要一些帮助。

    phonebook = {}

    line = input('Name and clour: ')
    while line:
     name, number = line.split()
     phonebook[name] = number    
     line = input('Name and clour: ')
     phonebook.keys()[1]

这是错误

    Traceback (most recent call last):
    File "program.py", line 9, in <module>
    print(phonebook.keys()[1])
    TypeError: 'dict_keys' object does not support indexing

标签: pythonstring

解决方案


你可以试试这个:

phonebook = {}

line = input('Name and colour: ') #I'm guessing you want them comma separated
while (len(line)>0):
    name, number = line.split(",")
    phonebook[name] = number
    print("Name : ",name," Number : ",phonebook[name])   
    line = input('Name and colour: ')

print(phonebook) # Incase you want to print the entire dictionary

推荐阅读