Problems
1. 创建一个通讯录,步骤如下,请根据步骤完成以下操作:
1) 先根据三位同学的联系方式创建一个字典dicTXT;
2) 将另一建好的字典dicOther合并进dicTXT中;
3) 合并后,对通讯录增加一列“符号”,保存为字典dicWX中,然后合并进dicTXT,没有微信号的默认微信号为其手机号码,参见下图;
创建完dicTXT后,测试如下功能:
1) 将“大王”的手机号更改为13914000004;
2) 输入姓名查找对应同学的手机号、QQ号或者微信号,如果输入的姓名不存在,则返回“没有该同学的联系方式”。
dicTXL
姓名 手机 QQ
小新 13913000001 1819220001
小亮 13913000002 1819220002
小刚 13913000003 1819220003
dicOther
姓名 手机 QQ
大刘 13914000001 18191230001
大王 13914000002 18191230002
大张 13914000003 18191230003
dicWX
小新 xx9907
小刚 gang1004
大王 jack_w
大刘 liu666
2. 校园歌唱比赛,8位评委对6名选手给出了最终的评分(见表下)。请根据评分表,将每位选手的得分去掉一个最高分和一个最低分后求出平均分,并按照平均分由高到低顺序输出选手编号和得分。
评分表
编号 评分1 评分2 评分3 评分4 评分5 评分6 评分7 评分8
012 90 94 97 86 85 89 88 85
005 91 91 92 98 90 96 90 95
108 96 86 97 96 87 86 86 96
037 95 95 94 93 97 98 99 95
066 95 87 94 94 93 99 96 97
020 89 97 91 95 89 94 97 92
3. 编写程序,实现以下功能:
1) dic_student;
2) 由用户依次录入五名学生的班级、姓名、年龄、身高和体重,存入字典dic_student,将班级和姓名作为键,年龄、身高和体重作为值;
3) 输出字典dic_student的内容,格式为:
一班 王健 18岁 172cmcm 80kgkg
一班 张云 19岁 165cmcm 55kgkg
二班 张秋雨 18岁 178cmcm 82kgkg
二班 刘欢 17岁 169cmcm 75kgkg
二班 姜宇 19岁 170cmcm 70kgkg
提示:键是不可变的,班级和姓名应考虑用元组来表示;值是可变的,年龄、身高和体重可考虑用列表来表示。
4. 本学期学校共开设了3门选修课,一个班有25位学生,选修的情况如下:
1) 选修1号课程的同学有:李雷、张玉、王晓刚、陈红静、方向、司马清;
2) 选修2号课程的同学有:施然、李芳芳、高潇、方向、孙一航、黄煌;
3) 选修2号课程的同学有:陈红静、方向、刘培良、张玉、施小冉、司马清。
请编写程序解决以下问题:
1) 这个班有多少位学生没有选课?
2) 有多少位同学同时选修了2门课?
3) 有多少位同学同时选修了3门课?
4) 有多少位同学同时选修了1门课?
Source Code
Output
{'小新': {'手机': '13913000001', 'QQ': '1819220001'}, '小亮': {'手机': '13913000002', 'QQ': '1819220002'}, '小刚': {'手机': '13913000003', 'QQ': '1819220003'}, '大刘': {'手机': '13914000001', 'QQ': '18191230001'}, '大王': {'手机': '13914000002', 'QQ': '18191230002'}, '大张': {'手机': '13914000003', 'QQ': '18191230003'}}
{'小新': {'手机': '13913000001', 'QQ': '1819220001', '符号': 'xx9907'}, '小亮': {'手机': '13913000002', 'QQ': '1819220002', '符号': '13913000002'}, '小刚': {'手机': '13913000003', 'QQ': '1819220003', '符号': 'gang1004'}, '大刘': {'手机': '13914000001', 'QQ': '18191230001', '符号': 'liu666'}, '大王': {'手机': '13914000002', 'QQ': '18191230002', '符号': 'jack_w'}, '大张': {'手机': '13914000003', 'QQ': '18191230003', '符号': '13914000003'}}
{'手机': '13914000004', 'QQ': '18191230002', '符号': 'jack_w'}
大王 {'手机': '13914000004', 'QQ': '18191230002', '符号': 'jack_w'}
{'012': 66.5}
{'108': 68.375}
{'005': 69.375}
{'020': 69.75}
{'066': 71.125}
{'037': 71.75}
{('一班', '王健'): {'年龄': '18岁', '身高': '172cm', '体重': '80kg'}, ('一班', '张云'): {'年龄': '19岁', '身高': '165cm', '体重': '55kg'}, ('二班', '张秋雨'): {'年龄': '18岁', '身高': '178cm', '体重': '82kg'}, ('二班', '刘欢'): {'年龄': '17岁', '身高': '169cm', '体重': '75kg'}, ('二班', '姜宇'): {'年龄': '19岁', '身高': '170cm', '体重': '70kg'}}
这个班有12位学生没有选课
选1个课的有9人 [('李雷', 1), ('王晓刚', 1), ('施然', 1), ('李芳芳', 1), ('高潇', 1), ('孙一航', 1), ('黄煌', 1), ('刘培良', 1), ('施小冉', 1)]
选2个课的有3人 [('张玉', 2), ('陈红静', 2), ('司马清', 2)]
选3个课的有1人 [('方向', 3)]
公众号后台回复 200428 获取源码
欢迎关注~ SandQuant 专注于全球金融数据和量化投资策略