Python Excel文件的读写操作(xlwt xlrd xlsxwriter)
转:https://www.cnblogs.com/ultimateWorld/p/8309197.html
Python语法简洁清晰,作为工作中常用的开发语言还是很强大的(废话)。
python关于Excel的操作提供了xlwt和xlrd两个的包作为针对Excel通用操作的支持,跨平台(Mac、Windows均可)。
xlrdxlrd目前支持读写xlsx(2007版)与xls(2003版),简单的说明如下:
import xlrd def open_excel(file='test.xls'):
try:
data = xlrd.open_workbook(file)
# 通过索引获取工作表
sheet1 = data.sheets()[0]
# 通过名称获取工作表
sheet1 = data.sheet_by_name(u'sheet1')
# 获取table对象,根据table进行该工作表相关数据的读取
# 获取行列
row = sheet1.nrows
col = sheet1.ncols # 获取单元格的值
cell_value = sheet1.cell(0, 1).value # 行列表数据
for i in range(row):
print sheet1.row_values(i) # 数据写入
# 单元格类型 0 empty,1 string, 2 number, 3 datetime, 4 boolean, 5 error
# xf 扩展格式化
xf = 0
row_num = 1
col_num = 1
cell_type = 1
sheet1.put_cell(row_num, col_num, cell_type, u'hello word', xf)
return data
except Exception, e:
print str(e)
xlwt则支持写出2003版xls的包,具体操作如示例如下:
import xlwt def write_excel2():
# 设置通用样式变量
style_header = xlwt.easyxf(u'font: name 微软雅黑, color-index black, bold on,height 240')
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet(u'sheet1')
# 设置第一列到单元格的宽度
worksheet.col(0).width = 256 * 35
# 设置该工作表单元格的宽度
c = 1
while c < 300:
worksheet.col(c).width = 256 * 20
c += 1
col = 0
# 循环设置表头值
header = [u'姓名', u'性别', u'年龄']
for h in header:
worksheet.write(0, col, h, style_header)
col += 1
# 保存到本地目录,mac上后缀xlsx会报错,xls正常。
workbook.save('test.xls')
xlsxwriter支持2007版的写出
import xlsxwriter #导入模块
workbook = xlsxwriter.Workbook('new_excel.xlsx') #新建excel表
worksheet = workbook.add_worksheet('sheet1') #新建sheet(sheet的名称为"sheet1")
headings = ['Number','testA','testB'] #设置表头
data = [
['2017-9-1','2017-9-2','2017-9-3','2017-9-4','2017-9-5','2017-9-6'],
[10,40,50,20,10,50],
[30,60,70,50,40,30],
] #自己造的数据
worksheet.write_row('A1',headings)
worksheet.write_column('A2',data[0])
worksheet.write_column('B2',data[1])
worksheet.write_column('C2',data[2]) #将数据插入到表格中
workbook.close() #将excel文件保存关闭,如果没有这一行运行代码会报错
Python Excel文件的读写操作(xlwt xlrd xlsxwriter)的更多相关文章
- 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)
目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...
- Python对文件的读写操作
Python使用open函数来读写文件,open函数的第一个参数是文件名,第二个参数是可选的,有4种常见模式:(1)r 打开一个文件来读数据,这是默认模式:(2)w 打开一个文件来写数据,如果文件已有 ...
- python对excel文件的读写操作
import xlrd,xlwt data = xlrd.open_workbook('a.xlsx') #读 table = data.sheets()[0] data_list = [] data ...
- Python中文件的读写操作的几种方法
对文件的操作,步骤为:打开一个文件-->读取/写入内容-->保存文件 文件读写的3中模式 # 1.w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写 ...
- python对文件进行读写操作
转:http://sucre.iteye.com/blog/704077 ython进行文件读写的函数是open或file file_handler = open(filename,,mode) Ta ...
- Python中文件的读写操作
文件操作基本流程: 1. 介绍 计算机系统是由计算机硬件,操作系统,和应用程序三部分组成. 内存 存放不持久 硬盘 可以使数据持久化 文件操作 数据持久化的一种 全栈开发 框架类 2. 文件的操作 ...
- python txt文件常用读写操作
文件的打开的两种方式 f = open("data.txt","r") #设置文件对象 f.close() #关闭文件 #为了方便,避免忘记close掉这个文件 ...
- 『无为则无心』Python基础 — 42、Python中文件的读写操作(二)
目录 (5)文件对象方法(重点) 1)写方法 2)读方法 3)seek()方法 4)tell()方法 (6)关闭 (7)综合练习:读取大文件 (5)文件对象方法(重点) 1)写方法 @1.语法 对象对 ...
- pandas对Excel文件的读写操作
1.将Excel数据读为dataframe 1.1 直接读取 df = pd.read_excel('data.xlsx') 1.2 根据sheet索引 xls = pd.ExcelFile('dat ...
随机推荐
- php大文件上传
PHP用超级全局变量数组$_FILES来记录文件上传相关信息的. 1.file_uploads=on/off 是否允许通过http方式上传文件 2.max_execution_time=30 允许脚本 ...
- Density of Power Network(ZOJ 3708)
Problem The vast power system is the most complicated man-made system and the greatest engineering i ...
- Python WEB框架之Flask
前言: Django:1个重武器,包含了web开发中常用的功能.组件的框架:(ORM.Session.Form.Admin.分页.中间件.信号.缓存.ContenType....): Tornado: ...
- springboot中web应用的统一异常处理
在web应用中,请求处理过程中发生异常是非常常见的情况.springboot为我们提供了一个默认的映射:/error,当处理中抛出异常之后,会转到该请求中处理,并且该请求有一个全局的错误页面用来展示异 ...
- Matlab下imwrite,Uint16的深度图像
Matlab下imwrite,Uint16的深度图像 1. 在Matlab命令窗口输入命令: help imwrite 会有如下解释: If the input array is of class u ...
- 一步一步学习FastJson1.2.47远程命令执行漏洞
本文首发于先知:https://xz.aliyun.com/t/6914 漏洞分析 FastJson1.2.24 RCE 在分析1.2.47的RCE之前先对FastJson1.2.24版本中的RCE进 ...
- python hasattr()函数,getattr()函数, setattr()函数
1. hasattr(object, ‘属性名 or 方法名') 判断一个对象里面是否有某个属性或者某个方法,返回布尔值,有某个属性或者方法返回True, 否则返回False 2. getattr() ...
- Unix/Linux下如何查看DNS服务器地址
使用命令: cat /etc/resolv.conf 或者 less /etc/resolv.conf 即可. 详细请见:http://www.cyberciti.biz/faq/how-to-fin ...
- OOM异常的发生原因
一,jvm内存区域 1,程序计数器 一块很小的内存空间,作用是当前线程所执行的字节码的行号指示器. 2,java栈 与程序计数器一样,java栈(虚拟机栈)也是线程私有的,其生命周期与线程相同.通常存 ...
- 怎么通过原生JS改变元素的class属性
解决方法:document.getElementById('test').className = 'emphasis' Eg: <!doctype html> <html lang= ...