其实本来是想先从excel读取数据,生成字典后写到yml文件里的,不过暂时时间不够,先把读取excel的脚本写了记下来。
思路是这样的,先读excel文件,在这里是.xlsx的文件,所以用xlrd模块。.csv格式的用pandas更方便。
excel的第一行作为字典的key值,后面每一行生成一个字典,values就是每行的相应值。
循环遍历excel的列生成字典格式,然后再把每一行生成的字典放到一个列表里,最后输出的是一个包含很多字典的列表,每一个字典取得是第一行以外每行的值。最后这个脚本是用python3,加参数要处理的excel文件名。
努力学习python中。。。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import xlrd
import sys
def xls_list(argv):
data = xlrd.open_workbook(argv)
table = data.sheets()[0]
nrows = table.nrows #取得行数
ncols = table.ncols #取得列数
key1 = table.row_values(0) #第一行是字典的key值
d2 = [] #空列表,用于存放最终生成的字典数据
for r in range(1, nrows):
v1 = table.row_values(r) #循环读取每行数据
d1 = {} #每一行生成一个字典
for i in range(0,ncols): #循环把每行的数据放入相应字典
d1.update({key1[i]:v1[i], key1[i]:v1[i]}) #现在d1是字典格式
d2.append(d1)
return(d2)
def main(argv):
file = argv[1]
d3 = xls_list(file)