• 28.列表的嵌套


    列表的嵌套

    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("
    ")
        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']]
  • 相关阅读:
    python-函数作用域
    python-yield
    python-内置函数
    python-迭代和递归
    Command /usr/bin/codesign failed with exit code 1
    vue-infinite-scroll 自动加载
    git登陆迁移 SourceTree 不能自动识别
    Xcode不自动提示代码
    NSTimer的循环引用
    iOS autolayout 代码,自定义间距
  • 原文地址:https://www.cnblogs.com/kangwenju/p/12764620.html
Copyright © 2020-2023  润新知