首页 > 编程 > Python > 正文

Python基础练习——使用字典存储电话薄

2019-11-11 06:28:36
字体:
来源:转载
供稿:网友

定义:字典是Python中唯一内建的映射类型,字典中的值并没有特殊的顺序,但是都存储在一个特定的键(Key)里。键可以是数字、字符串、甚至元组

通过指定的键从字典访问值。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。键必须独一无二,但值则不必;值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

题目:使用字典来存储联系人及电话号码,并实现查询功能

初始代码:

# -*- coding:utf-8 -*-#创建字典TelDict={ "小妖精":17000000001, "老妖怪":17000000010, }PRint "请输入联系人姓名"name=raw_input()print "请输入对应号码"tel=raw_input()print "请输入查询姓名"name=raw_input()tel=TelDict(name)print TelDict.get(tel)

错误之处: 1、print TelDict.get(tel) 修改为 print TelDict.get(name)

get用来查询的键以及自定义值(默认为None)做参数,返回键对应的值。若不存在键则返回自定义值。get有两个参数,第一个是要查询的键,第二个是如果查询不到该键返回的值,默认是None

2、tel=TelDict(name) 修改为 tel=TelDict[name] 字典的基本操作为:

d[k]返回关键值到键k上的值;d[k]=v将值v关联到键k上;del d[k]删除键为k的项

3、第10行,输入对应号码后,还没有存到字典中 应该接着 TelDict[name]=tel - tel=TelDict[name] 这个意思是,我现在有个变量叫做tel,我把TelDict字典里以name做键的值赋给了它。 - TelDict[name]=tel 意思是,现在有个字典叫做TelDict,我把tel的值赋给了字典里以name作为键的值

4、编码建议:写字典的时候,反大括号和字典变量名开头对齐,为了美观。

修改后代码:

# -*- coding:utf-8 -*-#创建字典TelDict={ "小妖精":'17000000001', "老妖怪":'17000000010',}print "请输入联系人姓名:"name=raw_input()print "请输入对应号码:"tel=raw_input()TelDict[name]=telprint "请输入查询姓名:"name=raw_input()print "查询的号码为:"print TelDict.get(name,"查询不到")

运行结果如下: 这里写图片描述


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表