python中使用xlrd读excel使用xlwt写excel的实例代码

在数据分析和运营的过程中,有非常多的时候需要提供给别人使用,提供的形式有很多种,最经常使用的是Excel, 而 数据的统计和分析采用的是 python, 使用 python 把数据存在Excel 也是常见的事情,也有很多的库帮我们做了很多引擎的事情,比如说xlrd 和xlwt, 分别为读excel和写excel。

安装xlrd和xlwt

python中安装第三方模块都较为简单,同样的使用pip 命令就可以:

pip install xlrd
pip install xlwt

在这里准备上一份Excel,你也可以自己创建一份,这份Excel中有一些现成的数据供我们使用。

python中使用xlrd读excel使用xlwt写excel的实例代码

xlrd读取Excel的数据

读取的步骤为:

  • 打开Excel
  • 选择表单
  • 按行读取数据

读取的代码片段:

import xlrd
data = xlrd.open_workbook('sample-salesv3.xlsx')
table = data.sheets()[0]
nrows = table.nrows
for i in range(nrows ):
   print table.row_values(i)

可以输出如下的结果:

[u'account number', u'name', u'sku', u'quantity', u'unit price', u'ext price', u'date']
[740150.0, u'Barton LLC', u'B1-20000', 39.0, 86.69, 3380.91, u'2014-01-01 07:21:51']
[714466.0, u'Trantow-Barrows', u'S2-77896', -1.0, 63.16, -63.16, u'2014-01-01 10:00:47']
[218895.0, u'Kulas Inc', u'B1-69924', 23.0, 90.7, 2086.1, u'2014-01-01 13:24:58']
[307599.0, u'Kassulke, Ondricka and Metz', u'S1-65481', 41.0, 21.05, 863.05, u'2014-01-01 15:05:22']
[412290.0, u'Jerde-Hilpert', u'S2-34077', 6.0, 83.21, 499.26, u'2014-01-01 23:26:55']

如果想直接读到某一行某一列,可以直接使用 table.cell(0,0).value 其中,0,0 为0行0列。

xlwt把数据写入Excel

使用xlwt把数据写入Excel中,add_sheet 中可以添加表单,可以设置单元格的格式如字体和颜色,更多的可以参看 文档https://xlwt.readthedocs.io/en/latest/api.html 和github上的例子 https://github.com/dimagi/tablib/tree/master/tablib/packages/xlwt/examples

import xlwt
from datetime import datetime
style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on',
  num_format_str='#,##0.00')
style1 = xlwt.easyxf(num_format_str='D-MMM-YY')
wb = xlwt.Workbook()
ws = wb.add_sheet('A Test Sheet')
ws.write(0, 0, 1234.56, style0)
ws.write(1, 0, datetime.now(), style1)
ws.write(2, 0, 1)
ws.write(2, 1, 1)
ws.write(2, 2, xlwt.Formula("A3+B3"))
wb.save('example.xls')

总结

相关推荐