码迷,mamicode.com
首页 > 其他好文 > 详细

4.列表的嵌套

时间:2020-04-24 01:38:14      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:sch   产生   div   and   span   offices   temp   rand   int   

列表的嵌套

1. 列表嵌套

类似while循环的嵌套,列表也是支持嵌套的

一个列表中的元素又是一个列表,那么这就是列表的嵌套

schoolNames = [[北京大学,清华大学],
                    [南开大学,天津大学,天津师范大学],
                    [山东大学,中国海洋大学]]

2. 应用

一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机的分配

#encoding=utf-8

import random

# 定义一个列表用来保存3个办公室
offices = [[],[],[]]

# 定义一个列表用来存储8位老师的名字
names = [A,B,C,D,E,F,G,H]

i = 0
for name in names:
    index = random.randint(0,2)    
    offices[index].append(name)

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

运行结果如下:

技术图片

 

 例子1:

# 列表中的元素为列表 -> 列表嵌套
schoolNames = [[北京大学, 清华大学], [南开大学, 天津大学, 天津师范大学], [山东大学, 中国海洋大学]]
# 关心的是取值

# # 天津师范大学
tj_list = schoolNames[1]
# # [‘南开大学‘, ‘天津大学‘, ‘天津师范大学‘]
# print(tj_list)
name = tj_list[2]
print(name)

优化:

# 列表中的元素为列表 -> 列表嵌套
schoolNames = [[北京大学, 清华大学], [南开大学, 天津大学, 天津师范大学], [山东大学, 中国海洋大学]]

# 优化
name = schoolNames[1][2]
print(name)

# 山东大学
name = schoolNames[2][0]
print(name)

例子2:

import random
# 一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机的分配

# 定义一个列表保存三个办公室
office_list = [[], [], []]
# 保存八名老师
teacher_list = list("ABCDEFGH")
# 循环遍历8名老师
for name in teacher_list:
    # 产生一个随机的下标索引
    index = random.randint(0, len(office_list) - 1)
    # 随机分配老师
    office_list[index].append(name)

print(office_list)




    
    

运行结果:

[[C, H], [A, E, F, G], [B, D]]

 

4.列表的嵌套

标签:sch   产生   div   and   span   offices   temp   rand   int   

原文地址:https://www.cnblogs.com/kangwenju/p/12764620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!