Python|random之随机抽人分组

引言random库让Python语言有了灵魂,random是python函数中非常实用的函数之一,大部分python初学者都会去了解它,但是对它都不怎么刻意学习,其实random库很有内涵,有许多非常实用的东西:(1)random()返回0<=n<1之间的随机实数n;(2)choice(seq)则是从序列seq随机返回元素;(3)getrandbits(n)以长整数形式返回n个随机位;(4)shuffle(seq)对序列seq进行打乱重新排列;(5)sample(seq,n)从序列seq中随机返回n个元素;(6)randrange(x,y,z)x和y代表随机范围,z代表递增量;(7)randint(n,m)用于随机生成一个指定范围内的整数,范围在n到m之间;(8)uniform(n.m)用于随机生成一个指定范围内的浮点数,范围同样在n到m之间;问题描述针对班级要求,30人里面随机分配4组,每组人数为4人,进行小游戏。示例:输入:people=['小明', '小红', '小兰', '小美', '小黄', '小米', '小梦']输出:第一组:[ '小明', '小兰']第二组:[ '小美', '小米']解决方案算法描述:面对要求可以知道问题是随机抽人分组,一看随机便要运用random库,再看随机抽人分组,每组人数固定,那么便可以用sample解决,其次既然是抽人分组那么抽过的人就不会再被抽中,就可以把抽到的人选出来进行删除然后进行下一轮的抽人分组。随机抽人分组问题Python代码from random import*people=['一号','二号','三号','四号','五号','六号','七号','八号','九号','十号','十一号','十二号','十三号','十四号','十五号','十六号','十七号','十八号','十九号','二十号','二十一号','二十三号','二十三号','二十四号','二十五号','二十六号','二十七号','二十八号','二十九号','三十号']ans = sample(people,4)key='第一组:{0}'.format(ans)  #把随机元素返回进keyfor i in ans:people.pop(people.index(i)) #遍历ans随机返回的元素并在people中进行删除print(key)ans_2 = sample(people,4)key_2='第二组:{0}'.format(ans_2)print(key_2)for j in ans_2:people.pop(people.index(j))ans_3 = sample(people,4)key_3='第三组:{0}'.format(ans_3)print(key_3)for w in ans_3:people.pop(people.index(w))ans_4 = sample(people,4)key_4='第四组:{0}'.format(ans_4)print(key_4)运行实例:

结语

(0)

相关推荐

  • 生信编程15.多个差异分析结果直接取交集和并集

    有一些五六年前的学生们都成长为了各个生物信息学相关公司的小领导,而且他们都有了自己的公众号,知乎号,也算是一番人物.最近他们跟我反馈面试找不到或者说很难直接考核筛选到认真干活的生信工程师,挺有意思的. ...

  • 大话 Python:python 操作 excel 系列 -- 数据汇总与统计

    原创 Sir 老王 Python 集中营 1周前 在完成了前面系列的数据整理.数据清洗.数据提取与筛选之后,我们需要对进行进一步的汇总与统计使数据变成我们的可用信息. 1,数据分类汇总 # 对指定列分 ...

  • 第31天:Python random 模块

    在本节中继续介绍 Python 提供的常用模块 random 模块,它的主要功能是用来生成伪随机数的. random 模块 Python 提供的 random 模块实现了各种分布式的伪随机数生成器.该 ...

  • Python字典的11个方法超级详解

    Python字典是一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. print(dir(dict))['clear', 'copy', 'fromkeys', 'get', ...

  • python如何查找列表元素

    如果你想坚持你的模式,这是一个选择: search = {'Age' : 21, 'Gender' : 'M'} idxs = [ (main_col.index(key), val) for key ...

  • 第11天:Python 字典

    Python 中的字典提供了一种灵活的访问和组织数据的方式 字典是由很多值组成的集合 字典的索引可以是不同的数据类型,同样也不止是整数,也有字符串 字典的索引被称为"键",键及键所 ...

  • python random模块执行报错

    AttributeError: module 'random' has no attribute 'randint' 解决方法:python文件名与模块名不能一致,改名即可.

  • Python 告诉你疫情扩散有多可怕

    来源:Python 技术「ID: pythonall」 今年(2020年)是注定要铭记史册的一年,从年初开始新冠疫情,席卷了全球,中国人民众志成城,为战胜疫情做出了巨大牺牲.最近北京疫情形式又变得严峻 ...

  • python random模块

    本篇介绍比较常用的一个标准模块,random. 这是一个随机数模块,可以用来随机生成随机数,经常被用于数学.游戏.算法等等上面. 1.导入random模块 要使用此模块,要先导入. import ra ...

  • 俗语小识|抽人上皂角树

    这是村庄物语第266篇原创推送 皂角,即皂荚.我在网上查到的资料说,皂荚果煎汁,可代肥皂用以洗涤丝毛织物.我的同事中,跟我年纪仿佛的刘红,知道这回事.而我的记忆中,则是一片空白. 我只记得,小时候多用 ...

  • 这个 Python 知识点,90% 的人都得挂~

    学习 Python 这么久了,说起 Python 的优雅之处,能让我脱口而出的, Descriptor(描述符)特性可以排得上号. 描述符 是Python 语言独有的特性,它不仅在应用层使用,在语言语 ...

  • 来宾:出台办法破解巡察“抽人难”问题

    来源:广西纪检监察网 发布时间:2020年05月15日 11:12 巡察工作普遍存在"抽人难".抽调来的干部"不会干""不愿干"的问题,严重 ...

  • Python|除去报三的人

    问题描述有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位.解决方案问题分析(1)如何完成从最后一个人到第一个人的报数.(2)如何删去 ...

  • 我要偷偷的学Python,然后惊呆所有人(第九天)

    标题无意冒犯,就是觉得这个广告挺好玩的 上面这张思维导图喜欢就拿走,反正我也学不了这么多 文章目录 强行灌输知识点 什么是Request Headers 如何添加Request Headers Net ...

  • 你要偷偷的学Python,然后惊呆所有人(第七天)

    标题无意冒犯,就是觉得这个广告挺好玩的 文章目录 前言 欢迎来到我们的圈子 初见爬虫 为什么是爬虫 通用爬虫架构 爬虫的工作步骤 优秀爬虫的特性 1.高性能 2.可扩展性 3.健壮性 4.友好性 爬虫 ...