美文网首页python入门
python第25课练习——字典(1)

python第25课练习——字典(1)

作者: YoYoYoo | 来源:发表于2019-05-27 15:57 被阅读0次

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

答:是的,事实上他们就是在讨论“字典”这一概念,这些都是同一个概念!(所以,装X的本质就是把同一个东西说成各种不同的事物~)

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

参考答案:

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

输出:

<class 'dict'>
<class 'dict'>
67
67

2、一个练习

dict1 = {'李宁':'一切皆有可能','耐克':'Just do it!','阿迪达斯':'Impossible is noting','鱼C工作室':'让编程改变世界'}
print('鱼C工作室的口号是:',dict1['鱼C工作室'])

输出:

鱼C工作室的口号是: 让编程改变世界

3、生成同一字典的不同代码形式。

a = dict(one=1,two=2,three=3)
b = {'one':1,'two':2,'three':3}
c = dict(zip(['one','two','three'],[1,2,3]))
d = dict([('two',2),('one',1),('three',3)])
e = dict({'three':3,'one':1,'two':2})

4、练习题

data = '1000,小甲鱼,男'
MyDict = {}
# 还记得字符串的分割方法吧
(MyDict['id'],MyDict['name'],MyDict['sex']) = data.split(',')

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

输出:

ID: 1000
Name: 小甲鱼
Sex: 男

4、利用字典的特性编写一个通讯录程序实现下面功能。

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

请输入相关的指令代码:2
请输入联系人姓名:小甲鱼
请输入用户联系电话:020-88975651

请输入相关的指令代码:1
请输入联系人姓名:小甲鱼
小甲鱼:020-88975651

请输入相关的指令代码:2
请输入联系人姓名:小甲鱼
您输入的姓名在通讯录中已存在-->>小甲鱼:020-88975651
是否修改用户资料(YES/NO):YES
请输入用户联系电话:020-36582846

请输入相关的指令代码:1
请输入联系人姓名:小甲鱼
小甲鱼:020-36582846

请输入相关的指令代码:4
|--- 感谢使用通讯录程序 ---|

参考答案:

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

contacts = dict()

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

    if instr == 1:
        name = input('请输入联系人姓名:')
        if name in contacts:
            print(name + ':' + contacts[name])
        else:
            print('您输入的姓名不再通讯录中!')

    if instr == 2:
        name = input('请输入联系人姓名:')
        if name in contacts:
            print('您输入的姓名在通讯录中已存在-->>',end='') # end=''表示不换行
            print(name + ':' + contacts[name])
            if input('是否修改用户资料(YES/NO):') == 'YES':
                contacts[name] = input('请输入用户联系电话:')
        else:
            contacts[name] = input('请输入用户联系电话:')

    if instr == 3:
        name = input('请输入联系人姓名')
        if name in contacts:
            del(contacts[name])   # 也可以用dict.pop
        else:
            print('您输入的联系人不存在')

    if instr == 4:
        break
print('|--- 感谢使用通讯录程序 ---|')

相关文章

网友评论

    本文标题:python第25课练习——字典(1)

    本文链接:https://www.haomeiwen.com/subject/lkjxtctx.html