适用的场景:
导入excel表到MySQL,但是有些excel的表头与我们想要的字典对应的key值不一致,所有得到的value为None
例如这是3个excel文件的表头
need_columns=[
['学号', '姓名', '思想政治', '身心健康', '创新创业', '技术技能', '志愿服务', '人文艺术', '综合素质理论', '总分', 'GPA(教务处提供)', '综合素质测评分(P2)','班级','年级','学期'],
['学号', '姓名', '思想政治', '身心健康', '创新创业', '技术技能', '志愿服务', '人文艺术', '综合素质理论', '总分', 'GPA(教务处提供)', '综合成绩', '班级','年级','学期'],
['学号', '姓名', '思想政治', '身心健康', '创新创业', '技术技能', '志愿服务', '人文艺术', '综合素质理论', '总分', 'GPA(教务处导出)', '综合素质测评分', '班级','年级','学期']
]
例如这是我们想要导入数据库的value,要对应excel的表头,然后输出相应的value导入mysql
need_word={
'学号':'style_id',
'姓名':'stu_name',
'思想政治':'political_edu',
'身心健康':'physical_heal',
'创新创业':'innovation_entrep',
'技术技能':'technical_skills',
'志愿服务':'volunte',
'人文艺术':'human_art',
'综合素质理论':'zh_ theory',
'总分':'score',
'GPA(教务处提供)':'GPA',
'综合成绩':'zh_score',
'班级':'class',
'年级':'year',
'学期':'semester',
}
#将字典上的key值转成列表
key=list(need_word.keys())
代码逻辑如下
for need in need_columns:
for i in range(0,len(key)):
#两个列表相同的话就pass
if need[i]==key[i]:
pass
#替换excel表头上的值
else:
need[i]=key[i]
for i in need:
print(need_word[i])