python操作excel常用的方法
读操作模块安装
pip install xlrd
写操作模块安装
pip install xlwt
xlrd读操作
1、打开excel
xl = xlrd.open_workbook('test.xls')
2、通过索引获取工作表
table = xl.sheet()[0] #有多个sheet,获取第一个sheet
3、获取第一行的内容
row = table.row_values(0)
4、获取第一列的内容
col = table.col_values(0)
5、获取行数、列数
table.nrows
table.ncols
6、单元格的值
table.cell(0,0).value
7、日期、合并单元格的值
合并的单元格的值默认可以从最顶层的行获取
获取日期
xlrd.xldate_as_tuple(table.cell_values(1,4),xl.datemode)
8、type类型
0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
示例代码:
#!/usr/bin/env python
# -*- coding:utf-8 -*- import xlrd # 打开Excel文件
workbook = xlrd.open_workbook('test.xlsx') # 输出Excel文件中所有sheet的名字
print workbook.sheet_names() # 根据sheet索引或者名称获取sheet内容
Data_sheet = workbook.sheets()[0]
CdfData_sheet = workbook.sheet_by_index(1)
Charts_sheet = workbook.sheet_by_name(u'Charts') # 获取sheet名称、行数和列数
print Data_sheet.name, Data_sheet.nrows, Data_sheet.ncols, \
CdfData_sheet.name, CdfData_sheet.nrows, CdfData_sheet.ncols, \
Charts_sheet.name, Charts_sheet.nrows, Charts_sheet.ncols # 获取整行和整列的值(列表
rows = Data_sheet.row_values(0) # 获取第一行内容
cols = Data_sheet.col_values(1) # 获取第二列内容
# print rows
# print cols # 获取单元格内容
cell_A1 = Data_sheet.cell(0, 0).value
cell_C1 = Data_sheet.cell(0, 2).value
cell_B1 = Data_sheet.row(0)[1].value
cell_D2 = Data_sheet.col(3)[1].value
print cell_A1, cell_B1, cell_C1, cell_D2 # 获取单元格内容的数据类型
# ctype:0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
print 'cell(0,0)数据类型:', Data_sheet.cell(0, 0).ctype
print 'cell(1,0)数据类型:', Data_sheet.cell(1, 0).ctype
print 'cell(1,1)数据类型:', Data_sheet.cell(1, 1).ctype
print 'cell(1,2)数据类型:', Data_sheet.cell(1, 2).ctype # 获取单元格内容为日期的数据
date_value = xlrd.xldate_as_tuple(Data_sheet.cell_value(1, 0), workbook.datemode)
print date_value
print '%d:%d:%d' % (date_value[3:]) d = {'11:25:59': [1, 2, 3], '11:26:00': [2, 3, 4], '11:26:01': [3, 4, 5]}
print d['11:25:59']
print d['11:26:00']
print d['11:26:01']
xlrd写操作
1、创建excel
xl = xlwt.Workbook()
2、创建工作表
table = xl.add_sheet(name)
3、写内容
table.write(row,col,cell)
4、写入并设置单元格式
table.write(row,col,cell,style)
5、合并单元格写入
table.write_merge(x,x+n,y,y+m,cell)
6、保存单元格
Workbook.save('demo.xls')
示例代码:
#!/usr/bin/env python
# -*- coding:utf-8 -*- import xlwt def set_style(name, height, bold=False):
style = xlwt.XFStyle() font = xlwt.Font()
font.name = name
font.bold = bold
font.color_index = 4
font.height = height style.font = font
return style def write_excel():
# 创建工作簿
workbook = xlwt.Workbook(encoding='utf-8')
# 创建sheet
data_sheet = workbook.add_sheet('demo')
row0 = [u'字段名称', u'时间', 'CRNTI', 'CELL-ID']
row1 = [u'测试字段', '15:50:33-15:52:14', 22706, 4190202] # 生成第一行和第二行
for i in range(len(row0)):
data_sheet.write(0, i, row0[i], set_style('Times New Roman', 220, True))
data_sheet.write(1, i, row1[i], set_style('Times New Roman', 220, True)) workbook.save('demo.xls') if __name__ == '__main__':
write_excel()
python操作excel常用的方法的更多相关文章
- Python操作excel表格
用Python操作Excel在工作中还是挺常用的,因为毕竟不懂Excel是一个用户庞大的数据管理软件 注:本篇代码在Python3环境下运行 首先导入两个模块xlrd和xlwt,xlrd用来读取Exc ...
- python操作excel表格(xlrd/xlwt)
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
- Python操作excel(xlrd和xlwt)
Python操作excel表格有很多支持的库,例如:xlrd.xlwt.openpyxl.win32com,下面介绍使用xlrd.xlwt和xlutils模块这三个库不需要其他的支持,在任何操作系统上 ...
- Python 利用Python操作excel表格之openyxl介绍Part1
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...
- 【转】python操作excel表格(xlrd/xlwt)
[转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...
- Python 利用Python操作excel表格之xlwt介绍
利用Python操作excel表格之xlwt介绍 by:授客 QQ:1033553122 直接上代码 案例1 #!/usr/bin/env python # -*- coding:utf-8 ...
- Python 操作Excel之通过xlutils实现在保留原格式的情况下追加写入数据
在Python操作Excel 的模块有 xlrd.xlwt.xlutils等. xlrd:读取Excel文件数据 xlwt:写入Excel 数据,缺点是Excel格式无法复用,为了方便用户,写入的话, ...
- python学习笔记(八)python操作Excel
一.python操作excel,python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的 ...
- python操作excel xlrd和xlwt的使用
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
随机推荐
- Inspinia_admin-V2.3原版(英文)
Inspinia_admin-V2.3原版(英文) Inspinia_admin-V2.3 BootStrap原版(英文) 原版是老外开发的,结果 国内某人翻译成中文版进行二次开发 卖998 演示地址 ...
- 老男孩Python全栈开发(92天全)视频教程 自学笔记09
day9课程内容: 乌班图(ubuntu)64位系统 和 VMware 虚拟机安装(官网收费又麻烦,在网上找资源 安装vmware: vm运行(秘钥找度娘)--文件--新建虚拟机--自定义 下一步-- ...
- markdown学习经验
文章首发于我的github博客 前言 markdown是一种简洁有力的文本编辑语言.由于它十分好用,我将所有的博客都换成了markdown编辑器. 学习方法 工具为先,从工具中学习,熟能生巧. 工具选 ...
- 剑指offer 丑数
思路:可以发现,每个丑数都是由以前的丑数得到.当前丑数一定是之前丑数能够得到的最小丑数. AC代码 class Solution { public: int GetUglyNumber_Solutio ...
- SpringBoot idea maven打包war
什么都不需要配置,跟着做! pom.xml修改打包类型为war <packaging>war</packaging> 排除内置Tomcat <!--因配置外部TOMCAT ...
- python 下划线--完美解释
Python 用下划线作为变量前缀和后缀指定特殊变量 _xxx 不能用'from module import *'导入 __xxx__ 系统定义名字 __xxx 类中的私有变量名 核心风格:避免用下划 ...
- Ansible自动化运维笔记1(安装配置)
1.Ansible的安装 pip install ansible==1.9.1 ansible1.9.1版本依赖的软件有 Python2.6以上版本 paramiko模块 PyYAML Jinja2 ...
- Tomcat重定向
tomcat默认情况下不带www的域名是不会跳转到带www的域名的,而且也无法像apache那样通过配置.htaccess来实现.如果想要把不带"www'的域名重定向到带"www& ...
- B树、B-树、B+树、B*树【转】,mysql索引
B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right): 2.所有结点存储一个关键字: 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树: 如: B ...
- Linux基础一
基本命令 useradd xxx 创建一个用户 uname 查看系统架构信息 uname -a 显示详细信息 uname -r 显示内核信息 date 显示当前网络时间 cat ...