本帖最后由 wushaominkk 于 2019-8-13 08:32 编辑
本人小白,一直搞手工测试的前几天学妹公司让做一个判断文件的代码练练手,拿来修改了下,源码如下:[Python] 纯文本查看 复制代码 import time
import xlrd
import threading
def res_one():
z=[]
for i in range(row):
rowdate = worksheet.row_values(i) # i行的list
z.append(rowdate)
return z
def sayhello():
global t
workxls = xlrd.open_workbook("g:/work-6-28.xlsx")
worksheet = workxls.sheet_by_name("Sheet1")
row = worksheet.nrows # 总行数
for i in range(row):
rowdate = worksheet.row_values(i) # i行的list
for a, b in enumerate(rowdate):
# print(i, a, b) # 第i行,a列,数据b
x=res(b,z[i][a])
if x:
print("有修改在:" + str(i + 1) + "行" + str(a + 1) + "列") #数列从0开始,加1方便阅读
print("修改值:" + str(z[i][a]))
print("修改后值:" + str(b))
print("修改时间为:" + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
z[i] = rowdate #重置修改地方的数据判断为新的数据
else:
pass
t = threading.Timer(1.0, sayhello)
t.start()
def res(b,c):
if (b == c):
return 0
else:
return 1
if __name__ == '__main__':
workxls = xlrd.open_workbook("g:/work-6-28.xlsx")
worksheet = workxls.sheet_by_name("Sheet1")
row = worksheet.nrows # 总行数
z=res_one()
t = threading.Timer(1.0, sayhello)
t.start()
功能是定时检查Excel数据是否有改动。理论上判断有改动后要触发邮件或者其他微信接口等通知。比如bug状态值改成已修复了发信息给测试。
效果图如下: |