for index1, itme1 in enumerate(list_col): for index, itme in enumerate(list_row): if itme1 == '总计': count = count_conditions( teacher_arr, lambda row: row[9] == '学前' or row[9] == '小学', lambda row: row[8] == itme) if count != 0: sh_4149.cell(index1+6, index+4).value = count if itme1 == '女': count = count_conditions( teacher_arr, lambda row: row[2] == '女', lambda row: row[8] == itme) if count != 0: sh_4149.cell(index1+6, index+4).value = count if itme1 == '少数民族': count = count_conditions( teacher_arr, lambda row: row[11] != '汉族', lambda row: row[8] == itme) if count != 0: sh_4149.cell(index1+6, index+4).value = count if itme1 == '在编人员': count = count_conditions( teacher_arr, lambda row: row[12] == '是', lambda row: row[8] == itme) if count != 0: sh_4149.cell(index1+6, index+4).value = count代码优化
时间: 2023-06-09 19:07:19 浏览: 51
为了提高代码的可读性和简洁性,可以考虑使用字典存储对应的条件和处理方式,从而实现代码优化。
例如,可以将对每一种条件的处理方式都存储在一个字典中,然后循环遍历每一个条件并根据条件执行相应的处理方式。
另外,可以将每一种处理方式封装成一个函数,提高代码的可重用性和可维护性。
下面是一个代码优化的示例:
# 条件处理字典
conditions_dict = {
'总计': lambda row: row[9] == '学前' or row[9] == '小学',
'女': lambda row: row[2] == '女',
'少数民族': lambda row: row[11] != '汉族',
'在编人员': lambda row: row[12] == '是'
}
# 处理方式字典
handlers_dict = {
'总计': lambda count, index1, index: sh_4149.cell(index1, 6, index, 4).value = count,
'女': lambda count, index1, index: sh_4149.cell(index1, 6, index, 4).value = count,
'少数民族': lambda count, index1, index: sh_4149.cell(index1, 6, index, 4).value = count,
'在编人员': lambda count, index1, index: sh_4149.cell(index1, 6, index, 4).value = count
}
# 循环遍历条件并执行相应的处理方式
for index1, item1 in enumerate(list_col):
for index, item in enumerate(list_row):
if item1 in conditions_dict:
count = count_conditions(teacher_arr, conditions_dict[item1], lambda row: row[8] == item)
if count != 0:
handlers_dict[item1](count, index1, index)