python筛选excel内容并生成exe文件
最近疫情原因,班级每天都要筛选未打卡人员,每次都手动操作太麻烦了。遂写下如下的程序,并且生成了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文件的更多相关文章
- Python爬虫-播报天气信息(生成exe文件)待续
#!/usr/bin/env python3 # -*- coding : utf-8 -*- '''1.从https://my.oschina.net/joanfen/blog/140364获取要播 ...
- Python 使用cx_freeze 生成exe文件【转】
Python 使用cx_freeze 生成exe文件 在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...
- 小白学Python(19): Pyinstaller 生成 exe 文件
python 默认并不包含 PyInstaller 模块,因此需要自行安装 PyInstaller 模块. 安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装 ...
- 利用pyinstaller生成exe文件碰到的一些问题及解决方法
在“开源图像标注工具labelme的安装使用及汉化”这篇博客中,使用pyinstaller将labelme项目的入口python文件main.py打包,生成了main.exe文件,可以在Windows ...
- 使用PyQt5自制文件查找工具,并生成EXE文件
一.工作中,有一个关键词查找工作,查找开发版本中使用的文本,有哪些词语是非法的,一个一个去查太累了,所以想到了用代码来实现.可后来想想,能否做成简单的小工具,大家都可以使用. 于是就着手编写工具.原来 ...
- pyinstaller生成exe文件失败
我的python是3.6,目前pyinstaller并不支持,有网友建议在Github上下载源码,用pyinstaller_develop文件夹替换pyinstaller安装位置下同名文件夹.这样做之 ...
- java 写 Excel(不生成实体文件,写为流的形式)
java 写 Excel(不生成实体文件,写为流的形式) public String exportReportExcel(String mediaCode, List<SimpleMediaRe ...
- 如何打包/运行jar包,及生成exe文件
关于如何打包/运行jar包,以及生成exe文件.之前各种查询.博客,终于搞明白究竟是咋回事.记得还做过笔记的.今天要打包生成exe用的时候,居然忘了咋怎来着.去查看之前的笔记,死活没找到(好像被删掉了 ...
- Java多线程之赛跑游戏(含生成exe文件)
在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...
随机推荐
- 打字练习-编程语言关键字系列-java
小编整理的java关键字,内容如下:abstract, assert, boolean, break, byte, case, catch, char, class, const, continue, ...
- 24.Haproxy搭建Web群集
Haproxy搭建Web群集 目录 Haproxy搭建Web群集 Haproxy简介 常见的Web集群调度器 软件类 硬件类 Haproxy应用分析 HAProxy的主要特性 HAProxy常见的8种 ...
- 快速保存Win10锁屏壁纸,收获美丽瞬间
对于写程序而言,每天接触得最多的就是电脑了 所以保持一种开放乐观,豁达美丽的心情是十分有必要的 使用"Everything"工具,输入"LocalState\Assets ...
- 有关于weiphp2.00611上传sae的一些注意(图片上传解决方案)
一.安装中注意的事项 安装时使用的系统为weiphp2.0611 版本 1.将所有文件上传到代码库中 2.按照步骤进行安装weiphp,注意在数据库导入的时候需要手动导入. ...
- Redis入门到精通01
Redis入门到精通 目录 Redis入门到精通 一.Redis缓存框架基本介绍 1.1Redis的应用场景 二.Redis的安装方式 2.1Windows操作系统安装Redis 2.2Linux操作 ...
- 搭建企业级实时数据融合平台难吗?Tapdata + ES + MongoDB 就能搞定
摘要:如何打造一套企业级的实时数据融合平台?Tapdata 已经找到了最佳实践,下文将以 Tapdata 的零售行业客户为例,与您分享:基于 ES 和 MongoDB 来快速构建一套企业级的实时数 ...
- 2019 CSP-S 初赛解析
因为我不会设置用博客园显示Markdown语法,所以在洛谷也写了一份:传送门 一起讨论的这套卷.题干 然后还有一些可以借鉴一下的解析 选择: T1. 注意运算顺序: a%3=1 --> (int ...
- Data too long for column 'xxx' at row
Data too long for column 'xxx' at row 数据库的默认的utff-8,且连接的字符串也设置了utf-8,数据库字段用的text,但是还是报错,原因超出了长度,要最大的 ...
- Hadoop集群搭建(完全分布式版本) VMWARE虚拟机
Hadoop集群搭建(完全分布式版本) VMWARE虚拟机 一.准备工作 三台虚拟机:master.node1.node2 时间同步 ntpdate ntp.aliyun.com 调整时区 cp /u ...
- Elasticsearch的cmd窗口乱码问题(windows)
elasticsearch 7.6.0 windows版日志乱码问题解决 修改jvm.options,如何重启es即可 新增 -Dfile.encoding=GBK