我有以下方案可供使用:
存在一个包含大量列的模板excel文件,每个文件都有列名。我有一些数据存储在MySQL中,我想将数据插入适当的列。我知道MySQLdb可以用来链接python中的MySQL,但是有什么好办法可以用EXCEL操作吗?
它与csv不同,所以我不确定是否有任何好的解决方案。谢谢你的帮助。
答案 0 :(得分:0)
来自http://www.python-excel.org/
有一些python包可用于处理任何Python平台上运行的Excel文件,并且不需要使用Windows或Excel。它们快速,可靠且开源:
Google Group致力于使用Python中的Excel文件,包括上面列出的库以及通过COM操作Excel应用程序。
对于这类事情,Google通常比StackOverflow更好......
答案 1 :(得分:0)
我认为以下步骤可以完成这项工作:
对于第1步,可以从xlrd
获得帮助对于第2步,请参考以下代码:
# read excel and get appropriate sheet
rb = xlrd.open_workbook(filename, on_demand=True, formatting_info=True)
my_sheet = rb.sheet_by_name(u'template name')
# get column names in item_list
item_list = my_sheet.row_values(1)
nrows = my_sheet.rows
ncolumns = my_sheet.columns
key_index = item_list.index('A')
value_index = item_list.index('B') # of course 'C' and 'D' if needed
对于step3,可以使用index来获取每一行的值
wb = copy(rb)
ws = wb.get_sheet(i) # get related sheet to write
for row in nrows:
key = my_sheet[row][key_index]
....
如果需要,请参阅my application