Python对Excle的读写

Python读 excel,使用模块xlrd

#coding=UTF-8

import xlrd

#打开一个excle文件
excle=xlrd.open_workbook('/Users/xxx/test.xlsx')

#sheets(),获取所有的sheet,返回list
print excle.sheets()   
#[<xlrd.sheet.Sheet object at 0x10f7cf810>]

#获取某一个sheet
sheet=excle.sheets()[0]
print type(sheet)

#sheet_by_index()利用索引获取某个sheet
sheet=excle.sheet_by_index(0)

#sheet_by_name(),利用名字获取某个sheet
sheet=excle.sheet_by_name('sheet1')

#sheet的行数
print sheet1.nrows

#sheet的列数
print sheet1.ncols

#取第?行的值,返回list
print sheet1.row_values(0)   
#[u'xiaoming', 18.0] ---》  Unicode格式

#取第?列的值,返回list
print sheet1.col_values(0)    
#[u'xiaoming', u'xiaohong ']

#取单元格cell(行,列)
print sheet1.cell(0,1).value   
#18.0

#取单元格cell_value(行 ,列)
#取sheet的某一个单元
print sheet.cell_value(1,2)
print sheet.row(1)[2].value
print sheet.col(2)[1].value

使用xlwt模块,对excle进行写操作

import xlwt
#不支持直接操作xlsx文件

#1、先定义一个对象
wkbw=xlwt.Workbook()

#2、添加一个sheet
sheetw =wkbw.add_sheet('new_sheet')

#3、再往单元格里面写内容
sheetw.write(0,0,'hello python')

#4、最后保存文件
wkbw.save('/Users/xxx/write_test.xls')

覆盖写入单元格

import xlwt
#定义一个对象
wkbw=xlwt.Workbook()
#添加一个sheet,并且cell_overwrite_ok=True,单元格覆盖写入为真
sheetw=wkbw.add_sheet('new_sheet2',cell_overwrite_ok=True)

#写入,覆盖写入
sheetw.write(0,0,'hello python')
sheetw.write(0,0,'hello world')

#保存
wkbw.save('/Users/xxx/write_test.xls')

使用xlutils模块对excle进行修改

from xlutils import copy
#定义一个对象
wkb = xlrd.open_workbook('/Users/xxx/test.xls')

#先copy
wkb_copy=copy.copy(wkb)

#获取sheet
sheet = wkb_copy.get_sheet(0)

#写入操作
sheet.write(0,0,'name')
sheet.write(0,1,'age')

#保存为原来的名字,覆盖原文件
wkb_copy.save('/Users/xxx/test.xls')

构造数据

写一个excle生成testuser1001-testuser2000

#创建一个对象
create_num = xlwt.Workbook()
#添加一个sheet
sheet =create_num.add_sheet('testusers')
#遍历1001-2000,写入
for i in xrange(1001,2001):
    sheet.write((i-1001),0,'testuser'+str(i))

#保存
create_num.save('/Users/xxx/tset_num.xls')
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值