python中csv/xlrd/xlwt模块操作excel

csv模块

作用

将数据存放到本地的csv文件中

使用流程

1、导入模块
2、打开csv文件
3、初始化写入对象
4、写入数据(参数为列表)

import csv
with open('test.csv', 'w', encoding='utf-8') as f:
    writer = csv.writer(f) # 初始化写入对象
    writer.writerow(['小明', 25]) # 写入一行
    writer.writerows([('聂风','36'),('秦霜','25'),('孔慈','30')])

示例代码

创建 test.csv 文件,在文件中写入2条数据

# 单行写入(writerow([]))
import csv
with open('test.csv','w') as f:
	writer = csv.writer(f)
	writer.writerow(['步惊云','36'])
	writer.writerow(['超哥哥','25'])

# 多行写入(writerows([(),(),()]
import csv
with open('test.csv','w') as f:
	writer = csv.writer(f)
	writer.writerows([('聂风','36'),('秦霜','25'),('孔慈','30')])

在windows中使用csv模块默认添加一个空行,使用newline=""可以解决

使用xlr和xlwt模块

安装xlrd模块和xlwt模块

pip install xlrd
pip install xlwt

也可以到官网下载安装包,解压后执行

python setup.py install

进行安装

使用xlrd模块读取Excel文件

  1. 导入模块
import xlrd
  1. 打开Excel文件(默认是rb方式打开)
myWorkbook = xlrd.open_workbook('excelFile.xls')
  1. 获取Excel工作表
mySheets = myWorkbook.sheets()                 #获取工作表list。
mySheet = mySheets[0]                          #通过索引顺序获取。
mySheet = myWorkbook.sheet_by_index(0)         #通过索引顺序获取。
mySheet = myWorkbook.sheet_by_name(u'Sheet1')  #通过名称获取。

4.获取行数和列数

nrows = mySheet.nrows
ncols = mySheet.ncols
  1. 获取一行和一列
myRowValues = mySheet.row_values(i)               #i是行数,从0开始计数,返回list对象。
myColValues = mySheet.col_values(i)               #i是列数,从0开始计数,返回list对象。
  1. 读取单元格数据
myCell = mySheet.cell(i, j)               #获取单元格,i是行数,j是列数,行数和列数都是从0开始计数。
myCellValue = myCell.value                #通过单元格获取单元格数据。
myCellValue = mySheet.cell_value(i, j)    #直接获取单元格数据,i是行数,j是列数,行数和列数都是从0开始计数。

使用xlwt模块写入Excel文件

  1. 导入模块
import xlwt
  1. 创建Excel工作薄
myWorkbook = xlwt.Workbook()
  1. 添加Excel工作表
mySheet = myWorkbook.add_sheet('A Test Sheet')
  1. 写入数据
myStyle = xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00')   #数据格式
mySheet.write(i, j, 1234.56, myStyle)
mySheet.write(2, 0, 1)                          #写入A3,数值等于1
mySheet.write(2, 1, 1)                          #写入B3,数值等于1
mySheet.write(2, 2, xlwt.Formula("A3+B3"))      #写入C3,数值等于2(A3+B3)
  1. 保存
myWorkbook.save('excelFile.xls')

xlutils结合xlrd可以达到修改excel文件目的

import xlrd
from xlutils.copy import copy
workbook = xlrd.open_workbook(u'有趣装逼每日数据及趋势.xls')
workbooknew = copy(workbook)
ws = workbooknew.get_sheet(0)
ws.write(3, 0, 'changed!')
workbooknew.save(u'有趣装逼每日数据及趋势copy.xls')

openpyxl可以对excel文件进行读写操作

from openpyxl import Workbook
from openpyxl import load_workbook
from openpyxl.writer.excel import ExcelWriter
workbook_ = load_workbook(u"新歌检索失败1477881109469.xlsx")
sheetnames =workbook_.get_sheet_names() #获得表单名字
print sheetnames
sheet = workbook_.get_sheet_by_name(sheetnames[0])
print sheet.cell(row=3,column=3).value
sheet['A1'] = '47'
workbook_.save(u"新歌检索失败1477881109469_new.xlsx") 
wb = Workbook()
ws = wb.active
ws['A1'] = 4
wb.save("新歌检索失败.xlsx")
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值