Python程序设计实例 | 字典
【摘要】 本系列推文案例中,建议Python采用3.10及以上版本,NumPy采用1.22.3及以上版本,Matplotlib采用3.5.1及以上版本,Pandas采用1.4.2及以上版本。Python从3.10这个版本开始,标准发行版本中自带的IDLE交互式环境中输入提示符>>>单独放在左侧,不能随输入语句一起复制。为了清晰区分实例在交互环境中的输入和输出,本系列推文在每个输入语句的开头依然保留输入提示符
01、字典的应用实例
【例1】假设姓名不重复,现有若干同学的姓名和成绩组成键-值对存放在字典stu中。stu={"张琳": 58,"孙治平": 70,"徐小伟": 89,"徐丽萍": 69,"童万丽": 90,"钱志敏": 84,"赵虚余": 64},请编程完成如下任务。
(1) 在字典中添加姓名为"晋宇浩"的同学,成绩显示为“缺考”。
(2) 张琳的成绩改为60。
(3) 删除徐小伟以及他的成绩。
(4) 显示原有字典和现有字典。
(5) 统计当前总人数。
(6) 从键盘输入一名同学的姓名,显示该同学的成绩,如字典中无此同学则显示“没找到该同学”。
第一种方法。
程序源代码如下:
#example4_5_1.py
#coding =utf -8
stu={
"张琳":58,"孙治平":70,"徐小伟":89,"徐丽萍":69,"童万丽":90,"钱志敏":84,"赵虚余":64}print("原有字典:",stu)stu[晋宇浩 ]='缺考'
stu[张琳']=60
del stu["徐小伟"]
print("现有字典:",stu)
print( 当前总人数为:,len(stu))name = input(请输入姓名:)
if name in stu:
print(该同学成绩为:’stulnamel)else:
print("没找到该同学")
程序example4_5_1.py可能的一种运行结果如下:
=== RESTART: G: example4 5 1.py ===========
原有字典:['张琳':58,"孙治平': 70,徐小伟': 89,徐丽萍': 69,童万丽': 90,"钱志敏':84,赵虚余': 64}
现有字典:{
张琳': 60,孙治平: 70,徐丽萍': 69,童万丽': 90,钱志敏': 84,赵虚余':64,晋宇浩 :缺考
当前总人数为:7
请输入姓名:童万丽
该同学成绩为:90
程序example4_5_1.py可能的另一种运行结果如下:
>>
============ RESTART: G: example4 5 1.py ============
原有字典:[张琳':58,"孙治平': 70,徐小伟': 89,徐丽萍':69,童万丽': 90,"钱志敏: 84,赵虚余':64)
现有字典:[张琳':60,孙治平': 70,徐丽萍': 69,童万丽': 90,钱志敏': 84,赵虚余':64,晋宇浩':'缺考
当前总人数为: 7请输入姓名:张平没找到该同学
第二种方法。
程序源代码如下:
#example4 5 2.py
# coding =utf -8
stu={
"张琳":58,"孙治平":70,"徐小伟":89,"徐丽萍”:69,
"童万丽":90,"钱志敏":84,"赵虚余":64}print("原有字典:",stu)
stu.update( 晋宇浩 :'缺考 ,张琳':60))stu.pop("徐小伟")
print("现有字典:”,stu)
print'当前总人数为:len(stu))
name = input(请输入姓名:)
if name in stu.keys():
print( 该同学成绩为:stu[name])else:
print("没找到该同学”)
思考: 从键盘输入一名同学的姓名,如果该姓名存在则输出成绩后又可以再次输入姓名、输出成绩,直到字典中没有该姓名时程序结束运行。请编写实现该功能的程序,保存为question4_5_1.py。该程序可能的一次运行结果如下:
RESTART: G: question4 5 1.y==-=====原有字典:['张琳': 58,孙治平: 70,徐小伟': 89,徐丽萍':69,童万丽': 90,钱志敏: 84,赵虚余': 64)
现有字典:张琳':60,"孙治平: 70,徐丽萍': 69,童万丽':90,"钱志敏': 84,"赵虚余: 64,晋
宇浩':缺考门
当前总人数为:7请输入姓名:孙治平该同学成绩为:70请输入姓名:童万丽该同学成绩为:90请输入姓名:晋宇浩该同学成绩为:缺考请输入姓名:章赞没找到该同学
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)