小甲鱼Python第025讲字典:当索引不好用时 | 课后测试题及参考答案

测试题:

0.当你听说小伙伴们再讨论“映射”、“哈希”、“散列”或者“关系数组”的时候,事实上他们在讨论什么呢?

  字典

1、尝试一下将数据(‘F’:70,“C”:67,“H”:104,“I”:105,“S”:115)创建为一个字典并访问键“C”对应的值是?

 1 #元组-->字典
 2 tuple1 = tuple((('F',70),('c',67),('H',104)))
 3 print(tuple1)
 4 dict2 = dict(tuple1)
 5 print(dict2)
 6 # 正常
 7 dict1 =dict((('F',70),('c',67),('H',104)))
 8 print(dict1)
 9 dict1_c = dict1["c"]
10 print(dict1_c)

2、用方括号(“[]”)括起来的数据我们叫列表,那么使用大括号(“{}”)括起来的数据我们就叫字典,对吗?

  我以为对,结果不对。

set--集合

1 dict1 = {1,2,3,4,5}
2 print(type(dict1))
3 #字典,键值对,映射关系
4 dict2 = {1:"one",2:"two"}
5 print(type(dict2))

3、你如何理解有些东西字典做得到,但“万能的”列表却难以实现呢?

1 brand = ["李宁","耐克","阿迪达斯"]
2 slogan = ["一切皆有可能","Just do it","Impossibale is nothing"]
3 print("耐克的口号是:",slogan[brand.index("耐克")])

  列表brand、slogan的索引和相对的值没有任何关系,我们仅通过两个列表的索引值的设置使其产生联系,而字典可以将brand的slogan与brand 在字典中联系起来,产生键值对(映射关系)。eg:

1 dict1 = {"李宁":"一切皆有可能","耐克":"Just do it","阿迪达斯":"Impossibale is nothing"}
2 print("耐克的口号是:",dict1["耐克"])

   都是在创建字典。

1 data = "1000,小甲鱼,男"
2 MyDict = { }
3 #字符串分割方法
4 (MyDict["id"],MyDict["name"],MyDict["sex"]) = data.split(",")
5 
6 print("Id:"+MyDict["id"])
7 print("Name:" + MyDict["name"])
8 print("sex:" + MyDict["sex"]) 

动动手:

 1 print("|---欢迎进入通讯录程序 ---|")
 2 print("|---1:查询联系人资料 ---|")
 3 print("|---2:插入新的联系人 ---|")
 4 print("|---3:删除已有联系人 ---|")
 5 print("|---4:退出通讯录程序 ---|")
 6 phone_books ={ }
 7 def chaxun():
 8     name = input("请输入联系人姓名:")
 9     if name in phone_books:
10         print(name+":"+phone_books[name])
11     else:
12         print("用户不存在")
13 def insert():
14     name = input("请输入联系人姓名:")
15     if name in phone_books:
16         print("您输入的姓名在通讯录中已存在-->",name+":"+phone_books[name])
17         t =input("是否修改用户资料(YES/NO):")
18         if t== "YES":
19             num = input("请输入用户联系电话:")
20             phone_books[name]=num
21     else:
22         phone_books[name] = input("请输入用户联系电话:")
23 def pop():
24     name = input("请输入联系人姓名:")
25     if name in phone_books:
26         del(phone_books[name])
27     else:
28         print("用户不存在")
29 while 1:
30     temp = int(input("请输入相关指令代码:"))
31     if temp == 1:
32         chaxun()
33     elif temp == 2:
34         insert()
35     elif temp == 3:
36         pop()
37     elif temp==4:
38         break
39 print("|---感谢使用通讯录程序---|")
原文地址:https://www.cnblogs.com/IT-NXXB/p/13062204.html