phone_numbers = {"abbie": "(860) 123-4535", "beverly": "(901) 454-3241",
"james": "(212) 567-8149", "thomas": "(795) 342-9145"}
编写一个功能,查找给出姓名的电话号码。这是我的一个跑步的打印输出:
problem3_5("james")
(212) 567-8149
现在我写了for
循环,当我把“james”放进去时,它打印出整个值,所以我这样做了:
def problem3_5(name):
for x in phone_numbers["james"]:
print(x, end="")
但是他们说平地机生产的线太少了。我在这里缺少什么?
答案 0 :(得分:0)
在字典中搜索值非常简单。您只需要使用正确的密钥进行索引。这不像列表或元组,程序可能必须搜索所有数据以进行匹配。请参阅以下程序。它演示了如何在字典中查找内容,并希望能让您朝着正确的方向前进。
#! /usr/bin/env python3
def main():
phone_numbers = dict(
abbie='(860) 123-4535',
beverly='(901) 454-3241',
james='(212) 567-8149',
thomas='(795) 342-9145'
)
name = input('Whose number do you want? ')
number = phone_numbers[name.lower()]
answer = 'The number of {} is {}.'.format(name.capitalize(), number)
print(answer)
if __name__ == '__main__':
main()