python列表(List)实现【8个老师随机分配到3个办公室】

作者:神秘网友 发布时间:2020-09-08 09:03:23

python列表(List)实现【8个老师随机分配到3个办公室】

python列表(List)实现【8个老师随机分配到3个办公室】

1、分析

1.1、定义list

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

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

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

1.2、随机分配办公室

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

import random

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

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

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

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

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

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

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

for name in office:
        print("%s"%name,end="\t")
    print()
    print("-"*20)

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

2、实现

import random
offices = [[],[],[]]
teacher = ["A","B","C","D","E","F","G","H"]

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

i = 1
for office in offices:
    print("办公室%d的人数是:%d"%(i,len(office)))
    i=i+1
    for name in office:
        print("%s"%name,end="\t")
    print()
    print("-"*20)

python列表(List)实现【8个老师随机分配到3个办公室】

结果每次都是随机的。

python列表(List)实现【8个老师随机分配到3个办公室】相关教程

  1. html创建多类型的有序列表
  2. 用Python打造一款文件搜索工具,所有功能自己定义
  3. 简易登录页面-wxPython学习(1)
  4. Python-matplotlib 学术散点图 EE 统计及绘制
  5. Python办公自动化 | 从PPT到Word
  6. Python初学者才会有的问题:“==” and “is”的区别是什么?
  7. Python 小案例 计算个人所得税
  8. Python web 应用性能调优