zoukankan      html  css  js  c++  java
  • 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

    效果如下:

  • 相关阅读:
    【REST详述及RESTful规范】
    【Vue CLI】从安装到构建项目再到目录结构的说明
    【Webpack】
    【npm】安装、搭建独立项目环境
    【Node.js安装步骤】
    【Vue路由系统详述】
    【Python实现图片验证码】
    【Vue实例生命周期】
    【Vue组件系统】
    Java实现几种常见排序方法
  • 原文地址:https://www.cnblogs.com/yxtz271828/p/8955662.html
Copyright © 2011-2022 走看看