自主设计了一款物品数量对照小程序
项目介绍
这是用python编写的一个脚本,主要将从社交媒体类,新闻类,清单类APP或者网站收集了几段无序的文本内容与已有的Excel表名单对照,查看是否有缺失的数据。
小程序的操作流程
-
将待处理的文本数据(一般是带有数字编号的数据,例如:1.张三 2.李四 3.王五…)复制粘贴到“待处理的文本.txt”里面,保存后退出
-
双击“删除文本中多余的数字编号.py”
-
再打开“处理之后的文本.txt”,将内容复制粘贴到“待处理的文本.txt”里面,保存后退出
-
最后,双击“名单对照小程序”按照里面的步骤执行即可。
操作过程以及结果展示
操作过程:
- 将杂乱无章需要做对比的文本内容粘贴到这里来
- 点击保存
- 双击这里
- 然后双击这里
- 将处理好的文字复制
- 粘贴到这里
- 打开小程序
- 按照程序提示的步骤来,先输入Excel文件名
运行结果:
- 显示已经查找成功,退出程序,查看new.xlsx
- 双击打开文档,检查是否有误错误
- 检查之后,并无任何错误
源代码
名单对照小程序的源码
import codecs
import os
import openpyxl
import openpyxl.styles
from openpyxl.styles import PatternFill # 导入填充模块
print('欢迎使用物品数量对照小程序\n\n请输入您要处理的Excel文件名:')
name=input()
try:
wb=openpyxl.load_workbook(name+'.xlsx')
except:
print('文件无法打开,或不存在此文件')
ws=wb['Sheet1']
fille=PatternFill("solid",fgColor="EA0000")#有的物品就标红
f=open('待处理的文本.txt',encoding="utf-8")
line=f.readline()
while line:
for row in range(1,ws.max_row+1):
if(line==' '+ws.cell(row,1).value+'\n'):
ws.cell(row,1).fill=fille
print(line+'已完成查找\n')
line=f.readline()
f.close()
print('\n已全部完成查找,请按回车退出程序后,查看new.xlsx')
wb.save('new.xlsx')
os.system("pause")
删除多余的数字编号源码
import codecs
import re
f=open('待处理的文本.txt','r',encoding="utf-8")
str=f.readline()
while str:
str=str.replace(str[:str.index('.')+1],' ')
f2=open('处理之后的文本.txt','a',encoding="utf-8")
f2.write(str)
str=f.readline()
f2=open('处理之后的文本.txt','a',encoding="utf-8")
f2.write('\n')
f2.close()
f.close()