作业025

本文介绍了编程中字典和列表的概念,强调了字典通过键值对存储数据的特性,以及其相对于列表的高效查找优势。同时,给出了创建和操作字典的示例,包括从字符串分割构建字典,并展示了一个简单的通讯录程序,该程序利用字典进行联系人信息的增删查改操作。
摘要由CSDN通过智能技术生成

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

1. 尝试一下将数据('F': 70, 'C': 67, 'h': 104, 'i': 105, 's': 115)创建为一个字典并访问键 'C' 对应的值?

a=dict({'F': 70, 'C': 67, 'h': 104, 'i': 105, 's': 115})
print(a["C"])


2. 用方括号(“[]”)括起来的数据我们叫列表,那么使用大括号(“{}”)括起来的数据我们就叫字典,对吗?
不对,{}里的数据必须是键值,数据之间有对映关系,如果没有的话那叫集合。

比如{"a":1,"b":2}是字典,{a,b,c}是集合。

3. 你如何理解有些东西字典做得到,但“万能的”列表却难以实现(臣妾做不到T_T)?

字典内的数据有对映关系,通过键就可以找到对应的值;有时列表也可以通过索引值实现字典的效果,但是效率不如字典高,它仅仅是通过索引值,数据之间没有什么关系。
4. 下边这些代码,他们都在执行一样的操作吗?你看得出差别吗?

执行的操作是一样的,这是创建字典的不同方法。没差别。

 5. 如图,你可以推测出打了马赛克部分的代码吗?

 

data = "1000,小甲鱼,男"
MyDict = {}
(MyDict['id'], MyDict['name'], MyDict['sex']) = data.split(',') 

print("ID:   " + MyDict['id'])
print("Name: " + MyDict['name'])
print("Sex   " + MyDict['sex'])

 

 动动手:

0. 尝试利用字典的特性编写一个通讯录程序吧,功能如图:

print("""|--- 欢迎进入通讯录程序 ---|
|--- 1:查询联系人资料  ---|
|--- 2:插入新的联系人  ---|
|--- 3:删除已有联系人  ---|
|--- 4:退出通讯录程序  ---|""")
total = dict()

while True:
    a=input('\n请输入相关的指令代码:')
    code=int(a)

    if code == 1:
        name = input('请输入联系人姓名:')
        if name in total:
            print(name + ' : ' + total[name])
        else:
            print('查无此人')
    elif code == 2:
        name = input('请输入联系人姓名:')
        if name in total:
            print('您输入的姓名在通讯录中已存在 -->> ', name , ' : ' , total[name])
            b=input('是否修改用户资料(YES/NO):')
            if b=='YES':
                total[name] = input('请输入用户联系电话:')
        else:
            total[name] = input('请输入用户联系电话:')
    elif code == 3:
        name = input('请输入联系人姓名:')
        if name in total:
            del(total[name])
        else:
            print('查无此人')         
    elif code == 4:
        break
print('|--- 感谢使用通讯录程序 ---|')

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值