HW7-30

HW

2.a~b

students = [
    {'name':'马克', 'age':20, 'score':92, 'phone':'8823662', 'gender':'男'},
    {'name':'艾米', 'age':21, 'score':80, 'phone':'8834789', 'gender':'女'},
    {'name':'凯西', 'age':22, 'score':99, 'phone':'8823655', 'gender':'女'},
    {'name':'雪诺', 'age':17, 'score':76, 'phone':'8823568', 'gender':'男'},
    {'name':'布兰德', 'age':19, 'score':54, 'phone':'8823098', 'gender':'男'},
    {'name':'温斯特', 'age':20, 'score':59, 'phone':'8823123', 'gender':'lesbian'}
]
count = 0   #   统计不及格学生的个数
# name = ''
student_score = 0
for student in students:
    student_score = student['score']
    if student_score < 60:
        count += 1
        name = student['name']
        print(name, student['score'])   # 打印不及格学生的名字和对应的成绩

print('不及格的学生人数是:', count)

2.c

count1 = 0
for student in students:
    student_age = student['age']
    if student_age < 18:
        count1 += 1
print('未成年学生的个数是:', count1)   # 统计未成年学生的个数

2.d

# 打印手机尾号是8的学生的名字
for student in students:
    student_phone = student['phone']
    if student['phone'][-1] == '8':
        name = student['name']
        print('手机尾号是8的是:', name)

2.e


# 打印最高分和对应的学生的名字
max_score = 0
for student in students:
    student_score = student['score']
    if student_score > max_score:
        max_score = student_score
        name = student['name']
print(name, max_score)

2.f

# 将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)
list1 = []
for student in students:
    student_score = student['score']
    list1.append(student_score)
    list1.sort(reverse=True)
print(list1)

2.g

# 删除性别不明的所有学生
for student in students:
    student_gender = student['gender']
    # if student_gender != '男' or student_gender != '女':
    if not (student_gender == '男' or student_gender == '女'):
        name = student['name']
        students.remove(student)
# print(name, student['gender'])
print(students)

3.用三个列表表示三门学科的选课学生姓名(一个学生可以同时选多门课)

a. 求选课学生总共有多少人

b. 求只选了第一个学科的人的数量和对应的名字

c. 求只选了一门学科的学生的数量和对应的名字

d. 求只选了两门学科的学生的数量和对应的名字

e. 求选了三门学生的学生的数量和对应的名字

course1 = ['Fiona', 'Molly', 'Sarah', 'Zoe', 'pencil','Rita','Divya']
course2 = ['Fiona', 'Zoe', 'May', 'Molly']
course3 = ['Fiona', 'Rose','Ishida']

courses = course1+course2+course3
courses1 =[]
# count = 0
for i in courses:
    if not i in courses1:
        courses1.append(i)

print(courses1)

count = 0
for j in courses1:
    count += 1
print('选课的学生总共有%d个' % count)
count = 0
for x in range(len(course1)):
    count += 1
print(count, course1) 
student = set(course1) | set(course2) |set(course3)
one_course = (set(course1) - set(course2) - set(course3))| (set(course2) - set(course1) - set(course3))
print(one_course, len(one_course))     # 只选一门
student = set(course1) | set(course2) |set(course3)
one_course = (set(course1) - set(course2) - set(course3))| (set(course2) - set(course1) - set(course3))|\
(set(course3) - set(course1) - set(course2))
three_course = set(course1) & set(course2) &set(course3)
two_course = student - one_course - three_course
print(two_course, len(two_course))
three_course = set(course1) & set(course2) &set(course3)
print(three_course, len(three_course)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 13,380评论 0 13
  • 1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) 2.声...
    漫磋嗟阅读 1,364评论 0 0
  • 1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话 2.声明一个列表,在列表中保...
    默默卡阅读 1,297评论 0 0
  • 1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话 2.声明一个列表,在列表中保...
    晓晓_007f阅读 1,891评论 0 0
  • 1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话 2.声明一个列表,在列表中保...
    归墟_a3c1阅读 1,742评论 0 0

友情链接更多精彩内容