Python实现循环随机抽题

前几天有个同学问了我一个问题:

现在班上共计有70名学生,题库中有20道题,每位同学随机抽5道题(不重复),该怎么用python实现这个功能?

感兴趣的同学可以先不看下面的分析,试着自己实现一下这个功能。

已经实现的同学或觉得有点问题的小伙伴,看看我的分析思路吧。

1 解题思路

step1:定义一个5行70列的全0矩阵,命名为stu_tit,用来存放每位学生的抽题结果(其中每一列可以存储一位学生抽取的题号)。

step2:定义1到20的题号,命名为title。

stpe3:用random.sample函数从题号中随机抽取5个不重复的数字。

step4:利用循环把每次抽取的题号保存到stu_tit的列中,重复70次即可实现上述功能。

step5:把循环后得到的结果矩阵转换成数据框,方便我们观看。

2 具体实现代码

import numpy as np

得到的结果如下:

至此,这个小功能就实现啦,感兴趣的同学可以自己动手实现一下。如果有不同的实现方法,也可以在公众号后台跟我讨论一下

往期回顾:

3D星空图

3D星空图V2版

520表白代码合集

用python绘制皮卡丘

娱乐圈排行榜动态条形图绘制

扫一扫关注我

19967879837

投稿****微信号、手机

本文分享自微信公众号 - 阿黎逸阳的代码(gh_f3910c467dfe)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

springboot2之优雅处理返回值

前言最近项目组有个老项目要进行前后端分离改造,应前端同学的要求,其后端提供的返回值格式需形如{"status":0,"message":"success","data":{}}方便前端数据处理。要实现前端同学这个需求,其实也挺简单的,

这个JS代码中目标数据用Python正则表达式如何提取?

大家好,我是皮皮。一、前言前几天在Python白银群【凡人不烦人】问了一个Python正则表达式的问题,这里拿出来给大家分享下。这个ts,token可以同时取出吗?二、实现过程这里【甯同学】给出了一个思路,使用正则表达式实现,如下所示:顺利的提取到了目标数

​一篇文章总结一下Python库中关于时间的常见操作

前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在