|
@@ -56,34 +56,26 @@ def _parse_result(r): # sourcery skip: dict-comprehension
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
def evaluate_one(xlsx_dict, res_dict):
|
|
|
true_num = 0
|
|
|
+ xlsx_dict_no_space: dict = copy.deepcopy(xlsx_dict)
|
|
|
+ for index, text in xlsx_dict_no_space.items():
|
|
|
+ if type(xlsx_dict_no_space[index]) is str:
|
|
|
+ xlsx_dict_no_space[index] = text.replace(' ', '')
|
|
|
+ elif type(xlsx_dict_no_space[index]) is list:
|
|
|
+ for k, v in enumerate(xlsx_dict_no_space[index]):
|
|
|
+ xlsx_dict_no_space[index][k] = v.replace(' ', '')
|
|
|
+
|
|
|
for key_yes in res_dict:
|
|
|
if type(res_dict[key_yes]) is str:
|
|
|
- if Levenshtein_Distance(res_dict[key_yes], xlsx_dict[key_yes]) == 0:
|
|
|
+ if Levenshtein_Distance(res_dict[key_yes], xlsx_dict_no_space[key_yes]) == 0:
|
|
|
table_result.extend([key_yes, xlsx_dict[key_yes], res_dict[key_yes], '✅'])
|
|
|
true_num += 1
|
|
|
else:
|
|
|
table_result.extend([key_yes, xlsx_dict[key_yes], res_dict[key_yes], '❌'])
|
|
|
+
|
|
|
key_no_dict = {}
|
|
|
- for key_no_xlsx in xlsx_dict['noKeyList']:
|
|
|
+ for key_no_xlsx in xlsx_dict_no_space['noKeyList']:
|
|
|
key_no_dict[key_no_xlsx] = []
|
|
|
for key_no_res in res_dict['noKeyList']:
|
|
|
key_no_dict[key_no_xlsx].append((Levenshtein_Distance(key_no_xlsx, key_no_res), key_no_res))
|
|
@@ -94,13 +86,44 @@ def evaluate_one(xlsx_dict, res_dict):
|
|
|
true_num += 1
|
|
|
else:
|
|
|
table_result.extend(['无key值', key_no_xlsx, sort_NoKey[0][1], '❌'])
|
|
|
+
|
|
|
+
|
|
|
rate = true_num / (len(table_result) / 4)
|
|
|
all_rate.append(rate)
|
|
|
statistics = f'共{len(table_result) // 4}个字段,正确{true_num}个,错误{len(table_result) // 4 - true_num}个'
|
|
|
-
|
|
|
return "{:.2f}%".format(rate * 100), statistics
|
|
|
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
def open_true_json(j_path):
|
|
|
with j_path.open('r') as f:
|