1 # coding:utf-8
2 # 一个简单的数据库
3 # 一个将人名用作键的字典。每个人都用一个字典表示,
4 # 字典包含键'phone'和'addr',它们分别与电话号码和地址相关联
5
6 people = {
7 'Alice':{
8 'phone': '2341',
9 'addr': 'Foo drive 23'},
10
11 'Beth':{
12 'phone': '9102',
13 'addr': 'Bar street 42'},
14
15 'Cecil':{
16 'phone': '3158',
17 'addr': 'Baz avenue 90'}
18 }
19
20 # 电话号码和地址的描述性标签,供打印输出时使用
21 labels = {
22 'phone': 'phone number',
23 'addr': 'address'}
24
25 name = input('Name:')
26
27 request = input('Phone number (p) or address (a)? ')
28
29 key = request # 如果request既不是'p'也不是'a
30 if request == 'p': key = 'phone'
31 if request == 'a': key = 'addr'
32
33 # 使用get提供默认值
34 person = people.get(name, {})
35 label = labels.get(key, key)
36 result = person.get(key, 'not available')
37 print("{}'s {} is {}.".format(name, label, result))
38
39
40