美文网首页
python excel导入导出

python excel导入导出

作者: 张老三168 | 来源:发表于2018-04-17 14:57 被阅读0次

excel导出

利用xlwt模块实现excel导出功能
这里想封装起一个公共的方法,但是发现字典转列表的顺序是无序的,输出列的数据和定义的不一致,这个问题待解决

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import xlwt
header = ['序号','姓名','年龄']

data = [
    {'id':1,'name':'mike','age':18},
    {'id':2,'name':'jack','age':18},
    {'id':3,'name':'lina','age':16},
    {'id':4,'name':'lnda','age':20},
]

book = xlwt.Workbook(encoding='utf-8', style_compression=0) # 创建一个Workbook对象,这就相当于创建了一个Excel文件
sheet = book.add_sheet('test', cell_overwrite_ok=True)  # # 其中的test是这张表的名字,cell_overwrite_ok,表示是否可以覆盖单元格,其实是Worksheet实例化的一个参数,默认值是False

# 设置表头
i = 0
for k in header:
    sheet.write(0, i, k)
    i = i + 1

# 数据写入excel
row = 1
for val in data:
    print(val)
    sheet.write(row, 0, val['id'])  # 第二行开始
    sheet.write(row , 1, val['name'])  # 第二行开始
    sheet.write(row , 2, val['age'])  # 第二行开始
    row = row + 1

# 最后,将以上操作保存到指定的Excel文件中
book.save(r'e:\python\basic\test1.xls')  # 在字符串前加r,声明为raw字符串,这样就不会处理其中的转义了。否则,可能会报错

excel读取

利用xlrd模块实现excel读取功能

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import xlrd # 引入xlrd模块

file = xlrd.open_workbook('test1.xls') # 打开excel文件对象

table = file.sheets()[0]  # 通过索引顺序获取
# table = file.sheet_by_index(0)  # 通过索引顺序获取
# table = file.sheet_by_name('test') # 通过表名获取对应表的数据

rows = table.nrows # 总的行数
columns = table.ncols # 总的列数

data = [] # 初始化列表
for r in range(1,rows): # 去除表头所有从第一行开始
    rowData = table.row_values(r) # 获取每一列的数据
    data.append(rowData) # 追加数据到列表中

print(data)

相关文章

网友评论

      本文标题:python excel导入导出

      本文链接:https://www.haomeiwen.com/subject/zbzukftx.html