python excel导入导出

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)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,523评论 25 708
  • 你有咖啡时间吗? 生命的长河里有咖啡时间, 让我们少许多孤独和浮躁, 一天的繁忙中有咖啡时间, 使我有休憩的品味和...
    茶舍花开阅读 263评论 5 2
  • 2017年3月26日(连续第40天总结) 今日目标完成情况: 1:一周回顾 100% 2:抄写八大+目标细分法+单...
    我来学而时习之阅读 152评论 1 0
  • 人间许多欢乐事,最不堪,岁末独自凄凉。忽忆来时,却下寒塘。飞越千山,咫尺不到南方。 孤雁万里清浅,不见来时伴。影里...
    chenjiong2012阅读 976评论 0 1
  • 今天多上了一节晚自习。学生要求的。他们有一颗向上的心。为了不辜负他们,我只能劳累自己。 课间操,他们...
    打灯笼的小星星阅读 270评论 0 1