用python处理excel文件_python 读写 Excel文件
一、用xlrd和xlwt读写excel
首先下载安装xlrd和xlwt这两个库。
1、打开excel
readbook = xlrd.open_workbook(r'\test\canying.xlsx')
2、获取读入的文件的sheet
sheet = readbook.sheet_by_index(1)#索引的方式,从0开始
sheet = readbook.sheet_by_name('sheet2')#名字的方式
3、获取sheet的最大行数和列数
nrows = sheet.nrows#行
ncols = sheet.ncols#列
4、获取某个单元格的值
lng = table.cell(i,3).value#获取i行3列的表格值
lat = table.cell(i,4).value#获取i行4列的表格值
5、打开将写的表并添加sheet
writebook = xlwt.Workbook()#打开一个excel
sheet = writebook.add_sheet('test')#在打开的excel中添加一个sheet
6、将数据写入excel
sheet.write(i,0,result[0])#写入excel,i行0列
sheet.write(i,1,result[1])
7、保存
writebook.save('answer.xls')#一定要记得保存
相关代码
#coding=utf-8
importxlrdimportxlwtimportdatetimeimportosclassexcelProcess:def __init__(self,keywordExcelFile,mainExcelFile):
self.keywordExcelFile=keywordExcelFile
self.mainExcelFile=mainExcelFiledefWriteLog(self, message,date):
fileName= os.path.join(os.getcwd(), date + '.txt')
with open(fileName,'a') as f:
f.write(message)defWriteSheetRow(self,sheet, rowValueList, rowIndex, isBold):
i=0
style= xlwt.easyxf('font: bold 1')#style = xlwt.easyxf('font: bold 0, color red;')#红色字体
#style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;') # 设置Excel单元格的背景色为黄色,字体为粗体
for svalue inrowValueList:ifisBold:
sheet.write(rowIndex, i, svalue, style)else:
sheet.write(rowIndex, i, svalue)
i= i + 1
defsave_Excel(self):
wbk=xlwt.Workbook()
sheet= wbk.add_sheet('sheet1', cell_overwrite_ok=True)
headList= ['IR_SITENAME', 'IR_AUTHORS', 'SY_INFOTYPE', 'RID', 'IR_URLTITLE','SY_KEYWORDS','IR_URLNAME', 'IR_URLTIME','IR_GROUPNAME', 'IR_CHANNEL','SY_BB_COMMON', 'summary', 'keyword']
rowIndex=0
self.WriteSheetRow(sheet, headList, rowIndex, True)for i in range(1, 11):
rowIndex= rowIndex + 1valueList=[]for j in range(1, 14):
valueList.append(j*i)
self.WriteSheetRow(sheet, valueList, rowIndex, False)
fileName= os.path.join(os.getcwd(),'test.xlsx')
wbk.save(fileName)
View Code
二、使用openpyxl库读写excel
xlrd和xlwt处理的是xls文件,单个sheet最大行数是65535,如果有更大需要的,建议使用openpyxl函数,最大行数达到1048576。
如果数据量超过65535就会遇到:ValueError: row index was 65536, not allowed by .xls format
首先需要导入 import openpyxl
1、打开excel
2、获取打开的excel的sheet内容
3、获取sheet的最大行数和列数
4、获取某个单元格的值
print(ws.cell(1,1).value)
5、打开将写的表并添加sheet
6、保存
完整代码
defreadExel(self):
filename= r'D:\work\Excel_txtProcesss\new-微博-合并\58.xlsx'inwb= openpyxl.load_workbook(filename) #读文件
sheetnames= inwb.get_sheet_names() #获取读文件中所有的sheet,通过名字的方式
ws = inwb.get_sheet_by_name(sheetnames[0]) #获取第一个sheet内容
#获取sheet的最大行数和列数
rows =ws.max_row
cols=ws.max_columnfor r in range(1,rows):for c in range(1,cols):print(ws.cell(r,c).value)if r==10:break
defwriteExcel(self):
outwb= openpyxl.Workbook() #打开一个将写的文件
outws = outwb.create_sheet(index=0) #在将写的文件创建sheet
for row in range(1,70000):for col in range(1,4):
outws.cell(row, col).value= row*2 #写文件
print(row)
saveExcel= "D:\\work\\Excel_txtProcesss\\test.xlsx"outwb.save(saveExcel)#一定要记得保存
View Code
三、
style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;')
在设置上Excel单元格的背景色时,fore_colour 支持的颜色是有限的,仅支持一下颜色
aqua 0x31
black 0x08
blue 0x0C
blue_gray 0x36
bright_green 0x0B
brown 0x3C
coral 0x1D
cyan_ega 0x0F
dark_blue 0x12
dark_blue_ega 0x12
dark_green 0x3A
dark_green_ega 0x11
dark_purple 0x1C
dark_red 0x10
dark_red_ega 0x10
dark_teal 0x38
dark_yellow 0x13
gold 0x33
gray_ega 0x17
gray25 0x16
gray40 0x37
gray50 0x17
gray80 0x3F
green 0x11
ice_blue 0x1F
indigo 0x3E
ivory 0x1A
lavender 0x2E
light_blue 0x30
light_green 0x2A
light_orange 0x34
light_turquoise 0x29
light_yellow 0x2B
lime 0x32
magenta_ega 0x0E
ocean_blue 0x1E
olive_ega 0x13
olive_green 0x3B
orange 0x35
pale_blue 0x2C
periwinkle 0x18
pink 0x0E
plum 0x3D
purple_ega 0x14
red 0x0A
rose 0x2D
sea_green 0x39
silver_ega 0x16
sky_blue 0x28
tan 0x2F
teal 0x15
teal_ega 0x15
turquoise 0x0F
violet 0x14
white 0x09
yellow 0x0D"""
另外一种方式是 用pyExcelerator
from pyExcelerator import *
#excel 第一行数据
excel_headDatas = [u'发布时间', u'文章标题', u'文章链接', u'文章简介']
articles=[
{u'发布时间':u'2017年5月9日',
u'文章标题':u'Python项目实战教程:国内就能访问的google搜索引擎',
u'文章链接':'http://mp.weixin.qq.com/s?timestamp=1494557315',
u'文章简介':u'大家可以留言、想了解python那个方向的知识、不然我也不知道'},
{u'发布时间':u'2017年5月4日',
u'文章标题':u'对于学习Django的建议、你知道的有那些',
u'文章链接':'http://mp.weixin.qq.com/s?timestamp=1494557323',
u'文章简介':u'随着Django1.4第二个候选版的发布,虽然还不支持Python3,但Django团队已经在着手计划中,据官方博客所说,Django1.5将会试验性的支持python3'}
]#定义excel操作句柄
excle_Workbook =Workbook()
excel_sheet_name= time.strftime('%Y-%m-%d')
excel_sheet=excle_Workbook.add_sheet(excel_sheet_name)
index=0#标题
for data inexcel_headDatas:
excel_sheet.write(0, index, data)
index+= 1index= 1
#内容
for article inarticles:
colIndex=0for item inexcel_headDatas:
excel_sheet.write(index, colIndex, article[item])
colIndex+= 1index+= 1
#保存test.xlsx到当前程序目录
excle_Workbook.save('test.xlsx')#db = mongoDB.mongoDbBase()#db.Get_information_stat()
View Code
用python处理excel文件_python 读写 Excel文件相关推荐
- python不同数据的读入_python读写不同编码txt文件_python读写txt文件
python读写不同编码txt文件_python读写txt文件 以后整理规范 [python] view plaincopy import os import codecs filenames=os. ...
- python读取python源代码文件_python 读写excel文件操作示例【附源码下载】
本文实例讲述了python 读写excel文件操作.分享给大家供大家参考,具体如下: 对excel文件的操作,python有第三方的工具包支持,xlutils,在这个工具包中包含了xlrd,xlwt等 ...
- python上传excel文件_python读写Excel python实现Excel上传
最近小编在处理各种.xlsx表格的数据处理和计算的工作,目前python用于操作表格的模块有很多,功能各有千秋.本文主要讲的是xlwt用于写,xlrt用于读. 表格写入 简单的写入功能可用xlwt模块 ...
- python读取xlsm文件_Python读写EXCEL文件常用方法大全
前言 python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式. 数据准备 为了方便演示,我这里新建了一个data.xls和data.xlsx文件,第一个 ...
- python 写入第二列_python读写Excel表格的实例代码(简单实用)
这篇文章主要介绍了python读写Excel表格的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下.需要先安装两个库:pip install xlrd.pip ...
- print writer保留原有信息写文件_Python读写EXCEL文件常用方法大全 - pythonputao
前言 python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式. 数据准备 为了方便演示,我这里新建了一个和x文件,第一个工作表sheet1区域" ...
- python读写excel表格_Python读写Excel表格(简单实用)
首先安装两个库:pip install xlrd.pip install xlwt! 1.python读excel--xlrd2.python写excel--xlwt 1.读excel数据,包括日期等 ...
- python本地读csv文件_python读写csv文件方法详细总结
python提供了大量的库,可以非常方便的进行各种操作,现在把python中实现读写csv文件的方法使用程序的方式呈现出来. 在编写python程序的时候需要csv模块或者pandas模块,其中csv ...
- python读docx文件_Python读写docx文件的方法
Python读写word文档有现成的库可以处理.我这里采用 python-docx.可以用pip install python-docx安装一下. 这里说一句,ppt和excel也有类似的库哦,而且是 ...
最新文章
- Python | 7招教你识别一个网站是否是Django后台
- hdu5347 MZL's chemistry(打表)
- ASP.NET配置设置-关于web.config各节点的讲解
- 教你编写高质量的 Java 代码!
- 01--DNS服务器2
- 浅谈mysqli连接方式与PDO连接方式
- vr全景拍摄教程,怎样拍摄vr全景照片?
- 【C语言】编程初学者入门训练(7)
- 求营业额占比 【问题描述】 从键盘输入学校附近某烧烤店某年每月的营业额,然后计算每月的营业额在年营业额中所占的百分比(四舍五入为整数,且不会超过全年的70%),并以样例输出所示的水平直方图形式
- 不推荐二周目跑重复剧情 不推荐开混10,建议开混11,游戏文本的奖励减半并没有生效. 混10=混11+混乱词条 1.经济获取(学自大佬:小小银Salmon【B站号】) 金币获取:刚通关开混乱11,拿主
- pycharm插件translation 更新TTK失败,请检查网络连接的解决办法
- 文明游戏5的计算机配置,文明6配置要求高吗 文明6最低电脑配置与推荐电脑配置...
- 自己动手写三层代码生成器学习总结
- 11、Nepxion Discovery 之全链路界面操作蓝绿灰度发布
- 【Web技术】1154- 现代 Web 研发体系中的新一代低/零码搭建
- c语言银行利率问题答案,郑州轻工业大学oj题解(c语言)1016: 银行利率 简单函数的使用...
- 打造自己的LoRaWAN网关,进阶3:设参运维
- asc和desc的区别
- sysbase powerdesigner 过期 需要lic文件 解决方法
- java判断浏览器杂项_java简单代码判断浏览器代码