今天给大家介绍一下使用Python中读写Excel的扩展模块xlrd、xlwt:
xlrd意为: xls文件read库,只能读,可以实现指定表单、指定单元格的读取;
xlwt意为:xls文件write库,只能写,可以实现指定表单、指定单元格的写入。
下面用一个例子带大家看看如何将文件从一个mdb格式的数据库里读取出来并存入xls或xslx文件格式。
import xlrd, xlwt, pyodbc, arcpy
import pandas as pd
# 设置数据库连接参数
MDB = 'your_mdb_file_name'; DRV = '{Microsoft Access Driver (*.mdb)}'; PWD = 'pw'
# 连接数据库
con = pyodbc.connect('DRIVER={};DBQ={};PWD={}'.format(DRV,MDB,PWD))
cur = con.cursor()
# 创建 xslx 文件
workbook=xlwt.Workbook(encoding="utf-8")
sheet1=workbook.add_sheet("Data", cell_overwrite_ok=True)
SQL = 'SELECT TABLE.FIELD1, TABLE.FIELD2, TABLE.FIELD3, TABLE.FIELD4, TABLE.FIELD5, TABLE.FIELD6, TABLE.FIELD7,
rows = cur.execute(SQL).fetchall()
cur.close()
con.close()
sheet1.set_panes_frozen(True)
sheet1.set_horz_split_pos(1)
workbook.save("Done.xls")
print("Workbook Created")
print("----------------")
df = pd.read_excel(open('Done.xls','rb'), sheetname='Data')
print df.head()
搞定!