在这里插入代码片
#coding:utf-8
import pandas as pd
import re
begin_start =''
soft_bin_start =''
soft_bin_end =''
onetest_strart=[]
onetest_end =[]
df = pd.read_excel(r'C:\Users\曾标\Desktop\aa.xlsx')
with open(r'C:\Users\曾标\Desktop\aa.txt')as f:
line_list=[x for x in f.read().split("\n")]
for index ,x in enumerate(line_list):
if x =='begin':
begin_start =index
elif x=='softbin':
soft_bin_start =index
elif x =='softbinend':
soft_bin_end =index
elif x=='onetest' or x =='chipinfo':
onetest_strart.append(index)
elif x=='onetestend' or x =='chipinfoend':
onetest_end.append(index)
# print(begin_start)
# print(soft_bin_end)
# print(soft_bin_start)
# print(onetest_strart)
# print(onetest_end)
'''检测是否为miss:'''
#拿到所有的要检测miss的项目
print(df[df['d']=='miss'])#1345需要检测miss
#拿到需要检测miss的列表
miss_df=df[df['d']=='miss']['c']
#非miss检测
nomiss_df = df[df['d']!='miss']
print(miss_df.values)#变成列表
check_list=[]
for i in range(begin_start+1,soft_bin_start):
#要检测的项目 print()
check_list.append( line_list[i].split(':')[0])
print(check_list)
#拿到所有项目的列表
for i in miss_df:
if i not in check_list:
print(i)
print("sss")
#然后检查其他的
print("检查非miss")
print(nomiss_df)
for i in range(begin_start+1,soft_bin_start):
##拿到该检查项需要检测的项目 和值:
check_txt = line_list[i].split(':')[0]
if not check_txt: #begin 和testinfo之间的空白需要跳出
break
check_value = line_list[i].split(':')[1].strip() ##一定要去掉空白符号
check_df =nomiss_df[nomiss_df['c']==check_txt] #拿到cc1 需要检测项目
for index ,row in check_df.iterrows():
if row['d']=='empty':#检测是否有为空
if check_value =='':
print("empty error")
if row['d']=='format':#检测format
com=re.compile(row['epxr'])
reslut = re.match(com,check_value)
if not reslut:
print("format error")
if row['d'] == 'length': # 检测forma
if len(check_value)> row['min'] and len(check_value)> row['max']:
print("length error")
文件解析,在mysql配置和检查项一样的项目
最新推荐文章于 2022-07-22 21:00:55 发布