列表的循环遍历、列表嵌套、综合案例


1. while

name_list = ['aaa', 'bbb', 'ccc']

i = 0
# len是访问数据个数
while i < len(name_list):
    # 查看下标数据
    print(name_list[i])
    i += 1

# 结果:
# aaa
# bbb
# ccc

2. for

name_list = ['aaa', 'bbb', 'ccc']

for i in name_list:
    print(i)

# 结果:
# aaa
# bbb
# ccc

  for循环做遍历更简洁,所以优先选择for循环做遍历

3. 列表嵌套

name_list = [['aaa', 'bbb', 'ccc'], ['ddd', 'eee', 'fff'], ['ggg', 'hhh', 'jjj']]

# 按下标查找到eee所在的列表
print(name_list[1])  # 结果:['ddd', 'eee', 'fff']
# 从eee所在列表里面,再按下标找到数据eee
print(name_list[1][1])  # 结果:eee

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
    # 不能指定是具体某个下标 -- 随机
    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)}, 老师分别是:')
    for name in office:
        print(name)
    i += 1

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/281098.html

(0)
上一篇 2022年8月20日 14:12
下一篇 2022年8月20日 14:16

相关推荐

发表回复

登录后才能评论