赣南师范大学 钟琦
    学生姓名.txt

    1. import random
    2. def read_file():
    3. """读文件,去除换行符,返回学生名字列表"""
    4. with open('../data/txt/学生姓名.txt', 'r', encoding='utf-8') as stu_name:
    5. return [u_name.strip() for u_name in stu_name]
    6. def lucky_stu(n):
    7. """接收整数n,抽取n个奖,并将获奖同学姓名从列表中删除,输出获奖姓名,无返回值"""
    8. for i in range(n):
    9. num = random.randint(0, len(name_ls)-1) # 从不超过列表找度的整数中抽取一个整数
    10. lucky_person = name_ls.pop(num) # 删除并返回序号为num的列表元素
    11. print(lucky_person)
    12. def lottery_draw():
    13. """根据各等级设奖数量字典,输出各等级抽几个奖,调用函数抽奖,无返回值"""
    14. award_ls = {'三等': 3, '二等': 2, '一等': 1} # 3个三等奖,2个二等奖,1个一等奖
    15. for grade, num in award_ls.items(): # 遍历字典视图
    16. print(f'\n获得{grade}奖{num}名,获奖名单如下:') # 换行输出
    17. lucky_stu(num) # 调用函数抽取获奖同学姓名
    18. if __name__ == '__main__':
    19. name_ls = read_file()
    20. lottery_draw()

    获得三等奖3名,获奖名单如下:
    张梦晗
    赖佳应
    陈莹

    获得二等奖2名,获奖名单如下:
    罗慧琳
    吴泳奇

    获得一等奖1名,获奖名单如下:
    王祺炜