python处理excel实例编程_python处理Excel的简单示例
对python这个高级语言感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
Python中一般使用xlrd库来读取Excel文件,使用xlwt库来生成Excel文件,使用xlutils库复制和修改Excel文件。这三个库只支持到Excel2003。
python-excel主页地址:http://www.python-excel.org/
xlrd
地址:https://pypi.python.org/pypi/xlrd
github地址:https://github.com/python-excel/xlrd
打开excel文件,获取一个Book()对象:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
import xlrd
book = xlrd.open_workbook("myfile.xls")
# End www.jb51.cc
获取sheets数目:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
>>> book.nsheets
3
# End www.jb51.cc
获取sheets列表:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
>>> book.sheets()
[,,]
# End www.jb51.cc
获取sheets name列表:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
>>> book.sheet_names()
[u'Sheet1',u'Sheet2',u'Sheet3']
# End www.jb51.cc
获取Book()中的Sheet:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet = book.sheets()[0] #sheets返回一个sheet列表
sheet = book.sheet_by_index(0) #通过索引顺序获取
sheet = book.sheet_by_name(u'Sheet1')#通过名称获取
# End www.jb51.cc
获取行数,列数,名字:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
>>> sheet.nrows
1002
>>> sheet.ncols
11
>>> sheet.name
u'Sheet1'
# End www.jb51.cc
获取某行,某行值列表,某列,某列值列表:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet.row(i)
sheet.row_values(i)
sheet.col(i)
sheet.col_values(i)
# End www.jb51.cc
获取单元格的值:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
cell = sheet.cell(i,j)
cell_value = sheet.cell_value(i,j)
cell_value = sheet.cell(i,j).value
# End www.jb51.cc
需要注意的是,用xlrd读取excel是不能对其进行操作的:xlrd.open_workbook()方法返回xlrd.Book类型,是只读的,不能对其进行操作。
xlwt
地址:http://pypi.python.org/pypi/xlwt,适用于python2.3-2.7
xlwt-future:https://pypi.python.org/pypi/xlwt-future/0.8.0,适用于Python 2.6-3.3
github地址:https://github.com/python-excel/xlwt
创建一个Excel文件并创建一个Sheet:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
from xlwt import *
book = Workbook()
sheet = book.add_sheet('Sheet1')
book.save('myExcel.xls')
# End www.jb51.cc
Workbook类可以有encoding和style_compression参数。
encoding,设置字符编码,style_compression,表示是否压缩。这样设置:w = Workbook(encoding='utf-8'),就可以在excel中输出中文了。默认是ascii。
向sheet写入内容:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet.write(r,c,label="",style=Style.default_style)
# End www.jb51.cc
简单写入:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet.write(0,label = 'Row 0,Column 0 Value')
# End www.jb51.cc
设置格式写入:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
font = xlwt.Font() # 字体
font.name = 'Times New Roman'
font.bold = True
font.underline = True
font.italic = True
style = xlwt.XFStyle() # 创建一个格式
style.font = font # 设置格式字体
sheet.write(1,label = 'Formatted value',style) # Apply the Style to the Cell
book.save('myExcel.xls')
# End www.jb51.cc
写入日期:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
style = xlwt.XFStyle()
style.num_format_str = 'M/D/YY' # Other options: D-MMM-YY,D-MMM,MMM-YY,h:mm,h:mm:ss,M/D/YY h:mm,mm:ss,[h]:mm:ss,mm:ss.0
sheet.write(0,datetime.datetime.now(),style)
# End www.jb51.cc
写入公式:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet.write(0,5) # Outputs 5
sheet.write(0,1,2) # Outputs 2
sheet.write(1,xlwt.Formula('A1*B1')) # 输出 "10" (A1[5] * A2[2])
sheet.write(1,xlwt.Formula('SUM(A1,B1)')) # 输出 "7" (A1[5] + A2[2])
# End www.jb51.cc
写入链接:
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
sheet.write(0,xlwt.Formula('HYPERLINK("http://www.google.com";"Google")')) #输出 "Google"链接到http://www.google.com
# End www.jb51.cc
xlutils
地址:http://pythonhosted.org/xlutils/
github地址:https://github.com/python-excel/xlutils
xlutils.copy.copy(wb)
复制一个xlrd.Book对象,生成一个xlwt.Workbook对象,可以对xlwt.Workbook进行修改。
# @param python处理Excel
# @author 编程之家 jb51.cc|jb51.cc
from xlrd import open_workbook
from xlutils.copy import copy
book = open_workbook('myExcel.xls')
wbook = copy(book) #wbook即为xlwt.WorkBook对象
wsheet = wbook.get_sheet(0) #通过get_sheet()获取的sheet有write()方法
wsheet.write(0,'value')
wb.save('myExcel.xls')
# End www.jb51.cc
python处理excel实例编程_python处理Excel的简单示例相关推荐
- python处理excel实例编程_python读取Excel实例详解
本文实例为大家分享了python读取Excel实例的具体代码,供大家参考,具体内容如下 1.操作步骤: (1)安装python官方Excel库-->xlrd (2)获取Excel文件位置并读取 ...
- python 拆分excel工作表_Python将一个Excel拆分为多个Excel
本文实例为大家分享了Python将一个Excel拆分为多个Excel的具体代码,供大家参考,具体内容如下 原始文档如下图所示 将销售部门一.二.三科分别存为三个Excel 代码如下 # -*- cod ...
- python调用excel的书_Python读写Excel表格
原博文 2018-09-13 20:28 − 最近在做一些数据处理和计算的工作,因为数据是以.CSV格式保存的,因此刚开始直接用Excel来处理. 但是做着做着发现重复的劳动,其实并没有多大的意义,于 ...
- python xlrd读取excel所有数据_python读取excel进行遍历/xlrd模块操作
我就废话不多说了,大家还是直接看代码吧~ #!/usr/bin/env python # -*- coding: utf-8 -*- import csv import xlrd import xlw ...
- python excel详解_python操作excel详解
前提: python操作excel需要使用的模块有xlrd.xlwt.xlutils.对excel进行读.写.更新操作.操作excel时需要先导入这些模块,demo如下: excel-读操作知识点: ...
- python做excel表格代码_Python读写Excel表格
最近在做一些数据处理和计算的工作,因为数据是以.CSV格式保存的,因此刚开始直接用Excel来处理. 但是做着做着发现重复的劳动,其实并没有多大的意义,于是就想着写个小工具帮着处理. 以前正好在一本书 ...
- python excel表格排序_Python实现EXCEL表格的排序功能
EXCEL的数值排序功能还是挺强大的,升序.降序,尤其自定义排序,能够对多个字段进行排序工作. 那么,在Python大法中,有没有这样强大的排序功能呢?答案是有的,而且本人觉得Python的排序功能, ...
- python excel截图保存_python 对excel进行截图
工作中需要对excel的单元格区域进行截图,以前是调用vba进行(走了很多弯路,虽然能实现,但比较low),后来逐步发现python的win32com与vba师出同门,很多方法操作都是类似的. 可以对 ...
- python根据excel生成报表_python生成Excel图表(通过xlsxwriter)
前面介绍了pandas的简单用法,pandas的数据可以通过matlab第三方包将数据生成报表,但是我想将报表生成在Excel中,这时候就可以借助xlsxwriter第三方包来生成图标 缺点:xlsx ...
最新文章
- bat小工具_小程序反编译工具在windows系统下的调用脚本
- Mozilla新特性只支持https网站
- 七、内存优化(4)性能计数器
- STM32学习——USART收发数据
- fullcalendar 数据渲染 背景色_数据可视化设计,从0到1必备技能
- AI技术人才成长路线十大方向
- Fixcel电子表格——报表模块(二)
- HDU 4003 Find Metal Mineral
- 医院耗材管理系统开发_15
- 【2016年第1期】关于我国农业大数据中心建设的设想
- PCB封装库创建流程及注意事项
- 台式计算机硬件组装应按什么步骤顺序进行,计算机硬件组装正确步骤
- 网络安全涉及到的知识积累(1)
- docker 执行py文件
- 监督学习之分类学习:支持向量机
- qq iphone for android,QQ for iPhone/Android v8.2.8 正式版发布
- PNG怎么转换成PDF?这篇文章教会你
- JavaWeb-Day01
- Hi-C辅助基因组组装技术以及其常用的软件介绍
- 一位同学3年通过CPA, CFA, ACCA的经验
热门文章
- UE4 actor碰到炸弹血条减少
- ppt怎么制作抖音快手快闪效果的倒计时动画?
- 单片机三角波c语言程序,三角波单独发生 单片机程序
- Android文件读写操作(assets 文件、 raw文件、内部存储文件、外部存储文件)
- 第008篇:ArcGIS中点对落入多边形的位置关系(相邻/相离)的判定
- YouTube DNN论文精读
- # Python第一节课
- ImportError: libopencv_imgcodecs.so.4.3: cannot open shared object file: No such file or directory报错
- Yolov5—实现目标检测(win10)
- 一个完整的嵌入式程序_放下偏见,原来嵌入式程序员如此“妖娆”!