Python基础听课笔记

Posted qjyyz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础听课笔记相关的知识,希望对你有一定的参考价值。

需求:为8位老师随机分配办公室

#先定义一个列表用来存储8位老师的姓名
teachers = [\'xiaowang\', \'xiaoli\', \'xiangming\', \'xiaohua\', \'xiaogang\', \'lili\', \'huyu\', \'wuyu\']

#定义一个空嵌套列表,里面有三个空列表用来等待其他老师的加入
office = [[],[],[]]

#为8位老师随机分配办公室:产生随机数的方式
for teacher in teachers:
  index = random.randint(0,2)
  office[index].append(teacher)
  # print(office)

#将每个办公室里的老师打印出来,并显示办公室编号
i = 1
for room in office:
  #print(room)
  print("办公室%d里的老师为"%i)
  for name in room:
    print(name)

  print("-"*10)
  i+=1

效果如下:

 

扩展:怎样保证每个办公室至少有两个人?

import random
#先定义一个列表用来存储8位老师的姓名
teachers = [\'xiaowang\', \'xiaoli\', \'xiangming\', \'xiaohua\', \'xiaogang\', \'lili\', \'huyu\', \'wuyu\']

#定义一个空嵌套列表,里面有三个空列表用来等待其他老师的加入
office = [[],[],[]]

#获取空列表的长度,也就是办公室的个数
listLength = len(office)

#先为三个办公室中的每个随机分配两个老师
for room in range(0,listLength):
i = 0
while i<2: #为每个办公室随机分配两位老师
  length = len(teachers)-1
  teacherIndex = random.randint(0,length) #产生0~7之间的随机数
  teacher = teachers[teacherIndex] #随机选择一个老师
  office[room].append(teacher) #将被选中的老师添加到办公室号为room的办公室中

  del teachers[teacherIndex] #将已经被选中的老师从列表中删除
  i+=1

#将剩下的两位老师随机分配到三个办公室,这两位可能会被分配到同一个办公室
for j in range(0,2):
  index = random.randint(0,2)
  rest_teacher = teachers[j]
  office[index].append(rest_teacher)

  j+=1

#将每个办公室里的老师打印出来,并显示办公室编号
k = 1
for roomNum in office:
  print("办公室%d里的老师为:"%k)
  for name in roomNum:
    print(name)

  print("-"*10)
  k+=1

效果如下:

以上是关于Python基础听课笔记的主要内容,如果未能解决你的问题,请参考以下文章

python 听课笔记- 序(鸡汤)

python 听课笔记- day01 介绍基本语法流程控制

20180130之PYTHON学习笔记PYTHON3写个自动听课功能

Go语言技巧之正确高效使用slice(听课笔记总结--简单易懂)

Go语言技巧之正确高效使用slice(听课笔记总结--简单易懂)

Go语言技巧之正确高效使用slice(听课笔记总结--简单易懂)