Welcome to 巧乐希

Join us!学习Python!

小溪流 终将汇成大海

作者:小溪流(爱好科技教育的工程师。)

像孩子一样学习Python。

上课啦,点名回答问题

同时记录下每个学生的点名次数

苦思冥想,于是我就用一点点

Python皮毛知识做了个点名器

1、导入库,随机和操作Excel的库都要导入。

import randomfrom openpyxl import load_workbookfrom openpyxl import workbook

2、将Excel表中的数据取出来,放到字典中为后面使用。字典的键值对是名字:行号,目的是为了后面方便修改点名次数。

#创建一个字典,用来存放表格中的名单name = {}#打开对应的文件wb = load_workbook('名单.xlsx')ws = wb.active#从第二行遍历到最后一行for row in range(2, ws.max_row + 1):#取出姓名那栏中的数据,姓名在第一列    cell_name = ws.cell(row = row, column = 1)    #添加字典键值对,名字:行号    name.update({cell_name.value:row})

3、从字典中随机取一个名字,叫这个学生起来回答问题。

#随机一个字典中的key,第二个参数为限制个数Selection_Name = random.sample(name.keys(), 1)[0]#叫抽取到的学生起来回答问题。print(Selection_Name + "请起立,回答一下这个问题。")cell = ws.cell(name[Selection_Name], column = 2)

4、修改点名次数,一开始这个单元格是空的,所以要做个None值的判断,None也就表示这个学生没有被点名嘛。

每点一次名,数值增加1。

#如果表格中数据为None,就从0开始if(cell.value == None):    num = 0else:    num = cell.value#每次点名,表格记录点名一次   cell.value = num + 1#将名单表格保存好。wb.save('名单.xlsx')

5、全部的代码。

import randomfrom openpyxl import load_workbookfrom openpyxl import workbookname = {}#打开对应的文件wb = load_workbook('名单.xlsx')ws = wb.active#从第二行遍历到最后一行for row in range(2, ws.max_row + 1):#取出姓名那栏中的数据    cell_name = ws.cell(row = row, column = 1)    #添加字典键值对,名字:行号    name.update({cell_name.value:row})# 随机一个字典中的key,第二个参数为限制个数Selection_Name = random.sample(name.keys(), 1)[0]print(Selection_Name + "请起立,回答一下这个问题。")cell = ws.cell(name[Selection_Name], column = 2)#如果表格中数据为None,就从0开始if(cell.value == None):    num = 0else:    num = cell.value#每次点名,表格记录点名一次   cell.value = num + 1wb.save('名单.xlsx')

你有什么需要用Python解决的问题吗?

给我留言

您的鼓励是我最大的动力

Python字典的学习

参照刘凤飞老师书籍

《Python真好玩:教孩子学编程》

第126页

更多Python操作Excel请看:

从九九乘法表开始Python操作Excel- 第一趴-创建Excel表格。

从九九乘法表开始Python操作Excel-第二趴-向表格里写入运算式

从九九乘法表开始Python操作Excel-第三趴-给九九乘法表化妆

[PPT来啦]从九九乘法表开始Python操作Excel

Python提取详细地址中的省市区-操作Excel系列

[PPT来啦]Python提取详细地址中的省市区-操作Excel系列

用Python在获奖证书写上获奖者的名字

一键生成所有名单证书-从Excel中将所有名单生成一张证书

请留步~

关注我~

点击再看~

我们一起学习

小溪流 终成大海

excel随机抽取_Python自制班级点名器让Excel表格用起来相关推荐

  1. excel随机抽取_Excel条件格式,扮靓你的报表

    为一亿职场人士赋能 后台回复100 领取100节Excel课程 哈喽,大家好. 储君老师又来送书啦! 今天送出本周的第2本书 前1天送的书请见 一小时教你全面了解微软Office认证考试 8个实用Ex ...

  2. excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示

    一.分享简单随机抽样的几种方法 1.抽样分析工具抽样 2.INDIRECT+RANDBETWEEN函数抽样 3.RAND+排序抽样 4.SAS抽样 二.分层抽样方法 1.Python分层抽样 2.SA ...

  3. python 有放回随机抽取_Python面试宝典之基础篇-08

    原标题:Python面试宝典之基础篇-08 题目36:如何使用random模块生成随机数.实现随机乱序和随机抽样? 点评:送人头的题目,因为Python标准库中的常用模块应该是Python开发者都比较 ...

  4. python 有放回随机抽取_Python 随机抽样

    # -*- coding: utf-8 -*- import numpy import pandas data = pandas.read_csv( 'D:\\PDA\\4.9\\data.csv' ...

  5. 导出excel加粗_Python办公自动化|从Word到Excel

    文章来源:早起Python 作者:陈熹 大家好,今天有一个公务员的小伙伴委托我给他帮个忙,大概是有这样一份Word(由于涉及文件私密所以文中的具体内容已做修改) 一共有近2600条类似格式的表格细栏, ...

  6. python设置excel的格式_python使用xlrd与xlwt对excel的读写和格式设定

    前言 python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库.本文主要介绍了python使用xlrd与xlwt对excel的读写和格式设定, ...

  7. python处理excel文件求和_python高手之路python处理excel文件(方法汇总)

    用python来自动生成excel数据文件.python处理excel文件主要是第三方模块库xlrd.xlwt.xluntils和pyExcelerator,除此之外,python处理excel还可以 ...

  8. python excel 数据匹配_python初学者,如何快速匹配excel任务

    第一次在知乎写长文的python办公类文章,有点小紧张~~ 自己是在给女朋友做东西的时候想到,可以分享一些python编程的简单知识,帮助大家提高工作的效率.然后就有了写文章出来的冲动~还开了一个公众 ...

  9. python excel模板 插件_python脚本——自动推送txt,EXCEL等文件模板

    #!/usr/bin/python # -*- coding: utf-8 -*- #此处支持中文字符一定要放在前两行,置后的话不生效,脚本报错 #!/usr/bin/env python impor ...

最新文章

  1. 2021年大数据常用语言Scala(二):Scala开发环境安装
  2. 实现HTTP协议Get、Post和文件上传功能——使用libcurl接口实现
  3. Java安卓 使用视图组 布局
  4. 英特尔AIDC秀肌肉:展示AI软硬件+生态全景图
  5. git push origin master报错
  6. poj3216 Prime Path(BFS)
  7. php程序yii是什么意思,Yii框架啥意思
  8. this 和super关键字
  9. flutter ios打包_Flutter通过BasicMessageChannel与Android iOS 的双向通信
  10. [剑指offer]面试题第[48]题[Leetcode][JAVA][第3题][无重复字符的最长字串][滑动窗口][HashSet/Map]
  11. CentOS 6.2 本地安装YUM
  12. [转载] Java面试题大全(2020版)
  13. ubantu的二三事
  14. 使用idea搭建Maven+SSM(Spring+SpringMVC+Mybatis)框架(一、使用Maven创建新工程)
  15. 漂亮的不像实力派--锤子新品“坚果手机”发布会
  16. 怎么压缩ppt文件大小?
  17. 网络-单播、多播(组播)和广播的区别
  18. Linux Capability探索试验
  19. java时间戳 时分秒_orale获取两个时间戳字符串之间的时间差(时分秒)(含java实现)...
  20. LOGO设计的五大原则

热门文章

  1. vs2015 下配置sfml
  2. protobuf-3.0 win环境编译
  3. Linux为什么虚拟内存大于物理内存?
  4. Linux之fd与dup2复制fd用法
  5. jenkins执行本地/远程shell脚本
  6. Mac上Jupyter之notebook快捷键
  7. Go接口(Interface)的使用方法
  8. Android 蓝牙开发(五)OPP接收文件
  9. abb变频器acs880说明书_ABB变频器ACS880-104/ACS880-204/ACS880-304产品参数及功能介绍
  10. layui select change事件_一道2020年全国生物学联赛试题背后的“眼齿鸟事件”