day7-字典作业-2021/9/23

  1. 定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )

    1. 统计不及格学生的个数
    2. 打印不及格学生的名字和对应的成绩
    3. 统计未成年学生的个数
    4. 打印手机尾号是8的学生的名字
    5. 打印最高分和对应的学生的名字
    6. 删除性别不明的所有学生
    7. 将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)
    information = [
        {
            'name': '赵一',
            'age': '12',
            'score': 89,
            'tel': '15848489598',
            'gender': '男'
        },
        {
            'name': '钱二',
            'age': '13',
            'score': 59,
            'tel': '15845757257',
            'gender': '女'
        },
        {
            'name': '孙三',
            'age': '14',
            'score': 95,
            'tel': '13599484418',
            'gender': '女'
        },
        {
            'name': '李四',
            'age': '15',
            'score': 99,
            'tel': '13348848249',
            'gender': '男'
        },
        {
            'name': '周五',
            'age': '16',
            'score': 63,
            'tel': '12345678911',
            'gender': '不明'
        },
        {
            'name': '吴六',
            'age': '17',
            'score': 54,
            'tel': '13316446897',
            'gender': '男'
        }
    ]
    # 统计不及格学生的个数
    count = 0
    for stu in information:
        if stu['score'] < 60:
            count += 1
    print(count)
    
    # 打印不及格学生的名字和对应的成绩
    for stu in information:
    	score = stu['score']
        if score < 60:
            print(stu['name'], score)
    
    # 统计未成年学生的个数
    count = 0
    for stu in information:
        if int(stu['age']) < 18:
            count += 1
    print(count)
    
    # 打印手机尾号是8的学生的名字
    for stu in information:
        if int(stu['tel']) % 10 == 8:
            print(i['name'])
    
    # 打印最高分和对应的学生的名字
    max_score = information[0]['score']
    names = [information[0]['name']
    for stu in information[1:]:
    	score = stu['score']
    	if score == max_score:
    		names.append(stu['name'])
     	elif score > max_score:
     	max_score = score
     	names.clear()
     	names.append(stu['name']
     print(names, max_score)
    
    # 删除性别不明的所有学生
    for stu in information[:]:
        if stu['gender'] == '不明':
            information.remove(stu)
    print(information)
    # 方法二
    new_stu = [stu for stu in information if stu['gender'] != '不明']
    print(new_stu)
    # 将列表按学生成绩从大到小排序
    
    
  2. 用三个元组表示三门学科的选课学生姓名(一个学生可以同时选多门课)

    1. 求选课学生总共有多少人
    2. 求只选了第一个学科的人的数量和对应的名字
    3. 求只选了一门学科的学生的数量和对应的名字
    4. 求只选了两门学科的学生的数量和对应的名字
    5. 求选了三门学生的学生的数量和对应的名字
java = ('张三', '李四', '小明', '小丽')
python = ('李四', '王二', 'Jacky', 'Pop')
C = ('Jacky', 'Pop', '张三')
# 求选课学生总共有多少人
s1 = set(python) | set(java) | set(C)
print(s1)

count = 0
for x in java:
    count += 1
for y in python:
    if y not in java:
        count += 1
for z in C:
    if z not in java and z not in python:
        count += 1
print(count)

# 求只选了第一个学科的人的数量和对应的名字
s2 = set(java) - set(python) - set(C)
print(s2)

count = 0
for i in java:
    if i not in python and i not in C:
        count += 1
        print(i, end=' ')
        
# 求只选了一门学科的学生的数量和对应的名字
# s3 = (set(java)-set(python)-set(C)) | (set(python)-set(java)-set(C)) | (set(C)-set(python)-set(java))
s3 = set(java) ^ set(python) ^ set(C) - set(java) & set(python) & set(C)
print(s3)

count = 0
for x in java:
    if x not in python and x not in C:
        count += 1
        print(x)
for y in python:
    if y not in java and y not in C:
        count += 1
        print(y)
for z in C:
    if z not in java and z not in python:
        count += 1
        print(z)
print(count)

# 求只选了两门学科的学生的数量和对应的名字
s5 = set(java) & set(python) & set(C)
s4 = s1 - s3 - s5
print(len(s4))
print(s4)

count = 0
for x in java:
    if (x in python and x not in C) or (x not in python and x in C):
        count += 1
        print(x)
for y in python:
    if y not in java and y in C:
        count += 1
        print(y)
print(count)

# 求选了三门学生的学生的数量和对应的名字
s5 = set(java) & set(python) & set(C)
print(len(s5))
print(s5)

count = 0
for x in java:
    if x in python and x in C:
        count += 1
        print(x)
print(count)
cd C:\Program Files\FlightGear fgfs --fg-root=C:\Program Files\FlightGear\data --aircraft=ufo --in-air --fdm=null --telnet=5501 --telnet=5502 --telnet=5503 --disable-ai-traffic --disable-real-weather-fetch --disable-random-objects --disable-terrasync --disable-clouds --disable-sound --disable-panel --disable-hud --disable-specular-highlight --timeofday=noon --prop:/sim/rendering/multi-sample-buffers=1 --prop:/sim/rendering/multi-samples=2 --prop:/sim/rendering/draw-mask-clouds=false --prop:/sim/rendering/draw-mask-terrain=true --prop:/sim/rendering/draw-mask-objects=true --prop:/sim/rendering/draw-mask-lights=true --prop:/sim/rendering/draw-mask-internal=true --prop:/sim/rendering/draw-mask-cockpit=true --prop:/sim/rendering/draw-mask-effects=true --prop:/sim/rendering/draw-mask-overlay=true --prop:/sim/rendering/draw-mask-world=true --prop:/sim/rendering/draw-mask-panel=true --prop:/sim/rendering/draw-mask-vr=true --prop:/sim/rendering/draw-mask-2d=true --prop:/sim/rendering/draw-mask-3d=true --prop:/sim/rendering/draw-mask-sky=true --prop:/sim/rendering/draw-mask-shadows=true --prop:/sim/rendering/draw-mask-cabin=true --prop:/sim/rendering/draw-mask-weather=true --prop:/sim/rendering/draw-mask-stereo=true --prop:/sim/rendering/draw-mask-internal-cockpit=true --prop:/sim/rendering/draw-mask-internal-windows=true --prop:/sim/rendering/draw-mask-internal-instruments=true --prop:/sim/rendering/draw-mask-internal-overlay=true --prop:/sim/rendering/draw-mask-internal-effects=true --prop:/sim/rendering/draw-mask-internal-lights=true --prop:/sim/rendering/draw-mask-internal-world=true --prop:/sim/rendering/draw-mask-internal-panel=true --prop:/sim/rendering/draw-mask-internal-3d=true --prop:/sim/rendering/draw-mask-internal-sky=true --prop:/sim/rendering/draw-mask-internal-cabin=true --prop:/sim/rendering/draw-mask-internal-weather=true --prop:/sim/rendering/draw-mask-internal-stereo=true --prop:/sim/rendering/draw-mask-internal-shadow=true --prop:/sim/rendering/draw-mask-internal-stall=true --prop:/sim/rendering/draw-mask-internal-aoa=true --prop:/sim/rendering/draw-mask-internal-thermal=false --prop:/sim/rendering/draw-mask-internal-ice=false --prop:/sim/rendering/draw-mask-internal-glass=true --prop:/sim/rendering/draw-mask-internal-dead=true --prop:/sim/rendering/draw-mask-internal-reflection=true --telnet=127.0.0.1:5501 --disable-panel --disable-hud --disable-specular-highlight --disable-clouds --disable-sound --timeofday=noon --enable-hud-3d=no --enable-hud-2d=yes --enable-panel=no --enable-sound=no程序显示错误
05-10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值