当前位置:   article > 正文

python列表(List)实现【8个老师随机分配到3个办公室】_导入随机库random库,使用列表创建8个老师和3个办公室,利用random库对老师进行随机

导入随机库random库,使用列表创建8个老师和3个办公室,利用random库对老师进行随机

1、分析

1.1、定义list

首先是使用List完成这个问题,那么就定义两个List:办公室list和老师list。

这里办公室list应该是嵌套了三个list,分别对应三个办公室,且为空;老师list则是正常的list。以A、B、C等代替老师。

  1. offices = [[],[],[]]
  2. teacher = ["A","B","C","D","E","F","G","H"]

1.2、随机分配办公室

这是这个问题的关键地方。涉及到随机分配,我们需要引入random来生成随机数。随机数代表的应该是办公室的序号,即0-2。这里使用随机数代表办公室的序号,然后用遍历老师,给老师分配办公室。

  1. import random
  2. for name in teacher:
  3. index = random.randint(0,2) #生成随机数012
  4. offices[index].append(name) #将老师随机的放入办公室

1.3、输出每个办公室的人数及老师名字

第一步:首先是输出每个办公室的人数,需要遍历每个办公室,用len求出每个办公室的人数(长度)

  1. for office in offices:
  2. print("办公室的人数是:%d"%(len(office)))

第二步:需要给办公室编号,方便观察

  1. i = 1
  2. for office in offices:
  3. print("办公室%d的人数是:%d"%(i,len(office)))
  4. i=i+1

第三步:输出每个办公室老师的名字。第一步的for循环中的office代表某一个办公室,其中的数值就是老师,遍历office。每遍历完一个办公室换行,再输出分隔符

  1. for name in office:
  2. print("%s"%name,end="\t")
  3. print()
  4. print("-"*20)

注意:这里的for循环是嵌套在第一步for循环里面的。

2、实现

  1. import random
  2. offices = [[],[],[]]
  3. teacher = ["A","B","C","D","E","F","G","H"]
  4. for name in teacher:
  5. index = random.randint(0,2) #生成随机数0-2
  6. offices[index].append(name) #将老师随机的放入办公室
  7. i = 1
  8. for office in offices:
  9. print("办公室%d的人数是:%d"%(i,len(office)))
  10. i=i+1
  11. for name in office:
  12. print("%s"%name,end="\t")
  13. print()
  14. print("-"*20)

结果每次都是随机的。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/851576
推荐阅读
相关标签
  

闽ICP备14008679号