1. 列表嵌套

类似while循环的嵌套,列表也是支持嵌套的
一个列表中的元素又是一个列表,那么这就是列表的嵌套

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

元素的取出:
比如取出南开大学:schoolNames[1][0]
元素的添加:schoolNames[0].append(“北京联合大学”) 因为schoolNames[0]也是一个列表

2. 应用

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

  1. #encoding=utf-8
  2. import random
  3. # 定义一个列表用来保存3个办公室
  4. offices = [[],[],[]]
  5. # 定义一个列表用来存储8位老师的名字
  6. names = ['A','B','C','D','E','F','G','H']
  7. i = 0
  8. for name in names:
  9. index = random.randint(0,2) # 随机生成0-2之间的整数 0、1、2
  10. offices[index].append(name)
  11. i = 1
  12. for tempNames in offices:
  13. print('办公室%d的人数为:%d'%(i,len(tempNames))) #获取列表的长度len()
  14. i+=1
  15. for name in tempNames:
  16. print("%s"%name,end='')
  17. print("\n")
  18. print("-"*20)

运行结果如下:
image.png

👩‍💻通过以上的一段程序既能学到新东西,又能复习一下某些东西,学习就是不断的重复,我认为写出下面的大脑想法是有益的。

🗺️复习:
随机数的一个方法:random.randint(0,2) # 随机生成0-2之间的整数 0、1、2
学习一个获取列表长度的方法:len()
学习一个print打印字符串的写法:print("%s"%name),%与前后内容之间可以有空格可以没有空格,都不会报错。
复习一个print的知识点:默认会换行,如果想要不换行,那么需要加一个end的参数。
学习一个print打印的快捷方式:print("-"*20)