python从班里抽同学并统计抽到的学号以及男女性别

从40(一半女一半男)的班级里抽五人参加校运会,并展示学号,统计抽到的女生人数

import random

# 定义班级人员的学号和性别
students = [
    ("001", "女"),
    ("002", "男"),
    ("003", "女"),
    ("004", "男"),
    ("005", "女"),
    # ... 省略其他学生
    ("040", "男")
]

# 从班级人员中随机抽取五个元素
sample = random.sample(students, 5)

# 遍历五个元素,统计女生的人数
num_female = 0
for student in sample:
    student_id, gender = student
    print(f"学号:{student_id},性别:{gender}")
    if gender == "女":
        num_female += 1

print(f"共有 {num_female} 名女生")

img

import random
l=[]
for i in range(5):
    f=1
    x=random.randint(1,40)
    for j in range(len(l)):
        if x==l[j]:
            f=0
            i-=1
            break
    if f==1:
        l.append(x)
t=0
for i in l:
    print(i)
    if i%2==1:
        t+=1
print('女生有'+str(t)+'人')

代码如下:

import random

# 定义班级人员信息
classmates = [
    {'id': 1, 'name': 'Alice', 'gender': 'female'},
    {'id': 2, 'name': 'Bob', 'gender': 'male'},
    {'id': 3, 'name': 'Charlie', 'gender': 'male'},
    {'id': 4, 'name': 'Diana', 'gender': 'female'},
    {'id': 5, 'name': 'Eve', 'gender': 'female'},
    {'id': 6, 'name': 'Frank', 'gender': 'male'},
    {'id': 7, 'name': 'Gina', 'gender': 'female'},
    {'id': 8, 'name': 'Henry', 'gender': 'male'},
    {'id': 9, 'name': 'Ivy', 'gender': 'female'},
    {'id': 10, 'name': 'Jack', 'gender': 'male'},
    {'id': 11, 'name': 'Kate', 'gender': 'female'},
    {'id': 12, 'name': 'Liam', 'gender': 'male'},
    {'id': 13, 'name': 'Mia', 'gender': 'female'},
    {'id': 14, 'name': 'Noah', 'gender': 'male'},
    {'id': 15, 'name': 'Olivia', 'gender': 'female'},
    {'id': 16, 'name': 'Paul', 'gender': 'male'},
    {'id': 17, 'name': 'Quinn', 'gender': 'female'},
    {'id': 18, 'name': 'Ray', 'gender': 'male'},
    {'id': 19, 'name': 'Sara', 'gender': 'female'},
    {'id': 20, 'name': 'Tom', 'gender': 'male'},
    {'id': 21, 'name': 'Uma', 'gender': 'female'},
    {'id': 22, 'name': 'Vincent', 'gender': 'male'},
    {'id': 23, 'name': 'Wendy', 'gender': 'female'},
    {'id': 24, 'name': 'Xander', 'gender': 'male'},
    {'id': 25, 'name': 'Yara', 'gender': 'female'},
    {'id': 26, 'name': 'Zach', 'gender': 'male'},
]

# 从班级中随机抽取 5 人
selected = random.sample(classmates, 5)

# 展示学号
print('Selected students:')
for student in selected:
print(f'ID: {student["id"]}')

# 统计抽到的女生人数
female_count = 0
for student in selected:
if student['gender'] == 'female':
female_count += 1

print(f'Number of female students: {female_count}')

这个程序会随机抽取 5 人参加校运会,并展示他们的学号,然后统计抽到的女生人数。

希望这个代码能够帮到你。