python,这个有点难哈,大教育心理

国王允许我在500个士兵当中挑选10个士兵出来,但由于时间有限,不能全部面试500个士兵,为了公平,我决定有计算点击随机挑选1人,再由我和joe面试是否通过,通过后即出队入选。这样重复多次直到10人选满为止。
关于挑选勇士的程序,现在分析如下:1定义队伍人数,初始值是500。
2、面试后如何选中一人,队伍会少一个人。
3、如果未选中,让其归队,队伍人数不会变化。
4、无论上一次有没有选中,只需要再剩下的人数里继续产生随机数(注意:并不是从原来整个500人中产生)
5如果剩下的人数是490人就意味着10人已经选满,循环结束。
分析:用到随机数,就会用到上面我们所讲到的导入random,和随机函数randint()如果人数只剩下490,则我们就退出,使用exit()退出语句

import random

soldier = [random.randint(1,
                          500) for _ in range(500)]
random.shuffle(soldier)

result = set()
while len(result) < 10:
    while True:
        select = random.randint(1, 500)
        if select not in soldier:
            continue
        else:
            break
    r = input(f"面试官,我是【{select}】号士兵,选我不?(Y/N)")
    if r == "Y":
        result.add(select)
        soldier.remove(select)

print(result)