当前位置:   article > 正文

Python之随机分配办公室(列表的综合应用)_导入随机库random库,使用列表创建8个老师和3个办公室,利用random库对老师进行随机

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

首先了解列表的循环遍历(利用while或for循环)
需求:依次打印列表中的各个数据。
最好用for循环,比较简洁。

while

代码:

name_list = ['Tom', 'Lily', 'Rose']
i = 0
while i < len(name_list):
 print(name_list[i])
 i += 1
  • 1
  • 2
  • 3
  • 4
  • 5

for
代码:

name_list = ['Tom', 'Lily', 'Rose']
for i in name_list:
 print(i)
  • 1
  • 2
  • 3

其次是了解 列表嵌套

所谓列表嵌套指的就是⼀个列表⾥⾯包含了其他的⼦列表。
应⽤场景:要存储班级⼀、⼆、三三个班级学⽣姓名,且每个班级的学⽣姓名在⼀个列表。

name_list = [['⼩明', '⼩红', '⼩绿'], ['Tom', 'Lily', 'Rose'], ['张三', '李四',
'王五']]
  • 1
  • 2

思考: 如何查找到数据"李四"?

# 第⼀步:按下标查找到李四所在的列表
print(name_list[2])
# 第⼆步:从李四所在的列表⾥⾯,再按下标找到数据李四
print(name_list[2][1])
  • 1
  • 2
  • 3
  • 4

最后,我们看下面的这道题。

需求:8位老师,3个办公室, 将8位老师随机分配到3个办公室

步骤:

  1. 准备数据
    1.1 8位老师 – 列表
    1.2 3个办公室 - 列表嵌套
  2. 分配老师到办公室
    随机分配就是把老师的名字写入到办公室列表 – 办公室列表追加老师名字数据
  3. 验证是否分配成功
    打印办公室详细信息:每个办公室的人数和对应的老师名字

代码:

import random
# 1. 准备数据
teachers = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']
offices = [[], [], []]

# 2. 分配老师到办公室 -- 取到每个老师放到办公室列表 -- 遍历老师列表数据
for name in teachers:
    # 列表追加数据 -- append(选中) extend insert
    # xx[0] -- 不能指定是具体某个下标 -- 随机
    num = random.randint(0, 2)
    offices[num].append(name)
# print(num)

# print(offices)

# 为了更贴合生活,把各个办公室子列表加一个办公室编号 1, 2, 3
i = 1
# 3. 验证是否分配成功
for office in offices:
    # 打印办公室人数 -- 子列表数据的个数  len()
    print(f'办公室{i}的人数是{len(office)},老师分别是:')
    # 打印老师的名字
    # print()  --  每个子列表里面的名字个数不一定 -- 遍历 -- 子列表
    for name in office:
        print(name)

    i += 1


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/488654
推荐阅读
相关标签
  

闽ICP备14008679号