最近疫情原因,班级每天都要筛选未打卡人员,每次都手动操作太麻烦了。遂写下如下的程序,并且生成了exe可执行文件。

1. 主程序

import openpyxl
import pyperclip
# 1.加载excel表
path="C:/Users/18768/Desktop/导出数据.xlsx" #此处填写excel存放地址,我是放到桌面了。
workbook = openpyxl.load_workbook(path)
sheet_names = workbook.sheetnames
sheet0 = workbook[sheet_names[0]] #加载第一个数据表 # 2.筛选数据表中【班级】的数据
Datas = []
for row in sheet0.rows:
lines = [cell.value for cell in row]
Datas.append(lines)
print(len(Datas))
me1= []
for line in Datas:
if line[37] == '班级1' or line[37] == '班级2':
me1.append(line[1]) #人名添加到列表中
print(len(me1))
print(me1) namelist='''
小明
张三
李四
'''
correct_list = namelist.split( ) a= set(correct_list).symmetric_difference(set(me1)) #查找未打卡名单
print(a)
answer = ' '.join(a)
pyperclip.copy(answer) #得到的人名自动存在剪贴板上

2. 生成exe的方法

本方法参考了这篇博文https://blog.csdn.net/Python_kele/article/details/118495091。

有两个坑需要注意:

①但该文章有个细节没说清楚。就是创建了虚拟环境后,必须在该环境中也安装pyinstaller库,否则打包后发现还是用的默认环境的库,文件还是很大。

②我这边创建虚拟环境后发现pip还是用的全局pip,当前虚拟环境并没有pip。于是用该方法安装对应版本pip

conda create -n random_env python=3.8.8 pip=21.0.1

最后的总结一下完整步骤:

# 将以上内容打包成exe文件
'''
conda create -n random_env python=3.8.8 pip=21.0.1
conda activate random_env
pip install pyinstaller pyperclip openpyxl 转到程序所在的文件夹之后
pyinstaller -F -w --icon=favicon.ico choice_stu_no_register.py --noconsole
'''

2022-04-08 10:40:35

2.0版本--更新

添加了启动文件选择对话框的内容,只需添加以下内容即可

import tkinter.filedialog
# 0. 选择文件
path = tkinter.filedialog.askopenfilename()

最后附上git地址 https://github.com/WangMengxiao319/choice_stu_no_register

最终效果:

(乖巧)

python筛选excel内容并生成exe文件的更多相关文章

  1. Python爬虫-播报天气信息(生成exe文件)待续

    #!/usr/bin/env python3 # -*- coding : utf-8 -*- '''1.从https://my.oschina.net/joanfen/blog/140364获取要播 ...

  2. Python 使用cx_freeze 生成exe文件【转】

    Python 使用cx_freeze 生成exe文件   在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...

  3. 小白学Python(19): Pyinstaller 生成 exe 文件

    python 默认并不包含 PyInstaller 模块,因此需要自行安装 PyInstaller 模块. 安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装 ...

  4. 利用pyinstaller生成exe文件碰到的一些问题及解决方法

    在“开源图像标注工具labelme的安装使用及汉化”这篇博客中,使用pyinstaller将labelme项目的入口python文件main.py打包,生成了main.exe文件,可以在Windows ...

  5. 使用PyQt5自制文件查找工具,并生成EXE文件

    一.工作中,有一个关键词查找工作,查找开发版本中使用的文本,有哪些词语是非法的,一个一个去查太累了,所以想到了用代码来实现.可后来想想,能否做成简单的小工具,大家都可以使用. 于是就着手编写工具.原来 ...

  6. pyinstaller生成exe文件失败

    我的python是3.6,目前pyinstaller并不支持,有网友建议在Github上下载源码,用pyinstaller_develop文件夹替换pyinstaller安装位置下同名文件夹.这样做之 ...

  7. java 写 Excel(不生成实体文件,写为流的形式)

    java 写 Excel(不生成实体文件,写为流的形式) public String exportReportExcel(String mediaCode, List<SimpleMediaRe ...

  8. 如何打包/运行jar包,及生成exe文件

    关于如何打包/运行jar包,以及生成exe文件.之前各种查询.博客,终于搞明白究竟是咋回事.记得还做过笔记的.今天要打包生成exe用的时候,居然忘了咋怎来着.去查看之前的笔记,死活没找到(好像被删掉了 ...

  9. Java多线程之赛跑游戏(含生成exe文件)

    在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...

随机推荐

  1. 打字练习-编程语言关键字系列-html

    以下是小编整理的部分html关键字,专门给有需要的朋友进行打字练习用,通过打字练习的方式,既提高了打字速度,又可以熟悉html关键字~~~ www, url, http, W3C, html, htm ...

  2. Java 将HTML转为XML

    本文介绍如何通过Java后端程序代码来展示如何将html转为XML.此功能通过采用Word API- Free Spire.Doc for Java 提供的Document.saveToFile()方 ...

  3. Django-使用nginx部署

    本地部署 uWSGI 在部署之前,我们得先了解几个概念 wsgi web应用程序之间的接口.它的作用就像是桥梁,连接在web服务器和web应用框架之间. uwsgi 是一种传输协议,用于定义传输信息的 ...

  4. TCP和UDP协议的区别以及原理

    参考文章https://blog.csdn.net/weixin_38483133/article/details/123864253

  5. CentOS7系统DNS主从配置

    CentOS7系统DNS主从配置:一.DNS服务器正向解析:1.1 基础环境:主机IP          主机名      操作系统    用途192.168.0.110   master      ...

  6. paddlespeech asr 使用教程

    目录 安装 paddle框架安装 软件源安装 源码安装 快速使用 下载测试使用的音频 非流式命令行接口(CLI) 非流式Server服务 流式Server服务 指令详解 打印paddlespeech_ ...

  7. java,接口

    package Demo.oop.APP.Demo07; //interface 定义接口的关键字:接口都需要实现类 public interface UserService { //接口中的所有的定 ...

  8. loguru备忘

    loguru是个非常好用的三方日志管理包,简单易用,奈何老是记不住,在这记录一下吧 #coding:utf-8 ''' @version: python3.8 @author: 'eric' @lic ...

  9. word段落前的小点·

    原因是因为修改论文时,要求在论文的标题前加上 '·' 类似: 在网上搜索了半天,都是加符号,特此记录 解决: 1.文件---选项---显示--勾选段落标记 2.修改样式 至此,设置完毕,章节前的小点已 ...

  10. 驳"一切不谈考核的管理都是扯淡"

    一.引子 以我个人的从业经验认为,研发人员的量化考核,始终是一个世界难题.正巧不久前在园子里看到了"一切不谈考核的管理都是扯淡!"一文(下面简称为"扯淡"),该 ...