python xlrd,xlwt 读写excel文件
python 读excel文件,需要xlrd库。下载地址:https://pypi.python.org/pypi/xlrd
python 写excel文件,需要xlwt库。下载地址:https://pypi.python.org/pypi/xlwt/1.1.2
下载后修改扩展名为rar, 解压后安装:

安装成功后就可以引用了。如下代码:
# -*- coding: utf-8 -*-
import os
import xlrd
import xlwt
import datetime
##################读excel文件##############################
#打开Excel文件,参数:excelFile:Excel文件路径
def open_Excel(excelFile):
excelFile = unicode(excelFile, "utf8")
if os.path.isfile(excelFile):
try:
data = xlrd.open_workbook(excelFile)
return data
except Exception,e:
print str(e)
'''往EXCEl单元格写内容,每次写一行sheet:页签名称;row:行内容列表;rowIndex:行索引;
isBold:true:粗字段,false:普通字体'''
def WriteSheetRow(sheet,rowValueList,rowIndex,isBold):
i = 0
style = xlwt.easyxf('font: bold 1') #粗字体
#style = xlwt.easyxf('font: bold 1, color red;') #红色字体
for svalue in rowValueList:
strValue = unicode(str(svalue),'utf-8')
if isBold:
sheet.write(rowIndex,i,strValue,style)
else:
sheet.write(rowIndex,i,strValue)
i = i + 1
#根据索引获取Excel表格中的数据 参数:excelFile:Excel文件路径 ,by_index:表的索引
def open_Excel_ByIndex(excelFile,sheetIndex):
data = open_Excel(excelFile)
table = data.sheets()[sheetIndex]
nrows = table.nrows #行数
ncols = table.ncols #列数
cursor = getSqlCursor()
for i in xrange(0,nrows):
headCols = table.row_values(i) #某一行数据
for a in headCols:
print a
#测试
open_Excel_ByIndex("D:\\test.xlsx",0)
#根据名称获取Excel表格中的数据 参数:excelFile:Excel文件路径
#sheetName:Sheet1名称
def open_Excel_BySheetName(excelFile,sheetName):
sheetName = unicode(sheetName, "utf8")
data = open_Excel(excelFile)
table = data.sheet_by_name(sheetName)
nrows = table.nrows #行数
ncols = table.ncols #列数
cursor = getSqlCursor()
for i in xrange(0,nrows):
headCols = table.row_values(i) #某一行数据
for a in headCols:
print a
#测试
open_Excel_BySheetName("D:\\test.xlsx",'sheet1')
##################写excel文件##############################
'''写excel文件'''
def save_Excel(strFile):
excelFile = unicode(strFile, "utf8")
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('sheet1')
headList = ['标题1','标题2','标题3','标题4']
rowIndex = 0
WriteSheetRow(sheet,headList,rowIndex,,True)
for i in xrange(1,11):
rowIndex = rowIndex + 1
valueList = []
for j in xrange(1,5):
valueList.append(j*i)
WriteSheetRow(sheet,valueList,rowIndex,False)
wbk.save(excelFile)
#测试
save_Excel("D:\\test.xlsx")
结果如下:

##################单元格常用设置##############################
1、设置超链接
#设置超链接
font = xlwt.Font() # Create Font
font.colour_index = 4 # 蓝色字体
font.underline=True
style = xlwt.XFStyle()
style.font = font
sheet.write(rowIndex,4,xlwt.Formula('HYPERLINK("https://www.baidu.com";"baidu")'),style)
2、设置单元格背景色
#设置单元格背景色
pattern = xlwt.Pattern()
pattern.pattern = xlwt.Pattern.SOLID_PATTERN
pattern.pattern_fore_colour = 5 #黄色
style = xlwt.XFStyle()
style.pattern = pattern
sheet.write(5, 5, 'Cell Contents', style)
''' 颜色值
0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue,
5 = Yellow, 6 = Magenta, 7 = Cyan, 16 = Maroon,
17 = Dark Green, 18 = Dark Blue, 19 = Dark Yellow ,
20 = Dark Magenta, 21 = Teal,
22 = Light Gray, 23 = Dark Gray
'''
3、设置粗字体
style = xlwt.easyxf('font: bold 1')
sheet.write(5, 5, 'Cell Contents', style)
4、设置字体颜色
style = xlwt.easyxf('font: bold 0, color red;')#红色字体
sheet.write(5, 5, 'Cell Contents', style)
5、设置列宽带
sheet.col(1).width = 3333 # 3333 = 1" (one inch)
6、设置日期格式
style = xlwt.XFStyle()
style.num_format_str = 'YYYY/MM/DD h:mm:ss'
sheet.write(5, 5, datetime.datetime.now(), style)

#Other options: D-MMM-YY, D-MMM, MMM-YY, h:mm, h:mm:ss, h:mm, h:mm:ss,
# M/D/YY h:mm, mm:ss, [h]:mm:ss, mm:ss.0
7、合并行和列
sheet.write_merge(0, 0, 0, 3, 'First Merge')
sheet.write_merge(2, 4, 0, 3, 'Second Merge')

8、给单元格增加边框
borders = xlwt.Borders() # Create Borders
borders.left = xlwt.Borders.DASHED
# May be: NO_LINE, THIN, MEDIUM, DASHED, DOTTED, THICK, DOUBLE, HAIR, MEDIUM_DASHED, THIN_DASH_DOTTED, #MEDIUM_DASH_DOTTED, THIN_DASH_DOT_DOTTED, MEDIUM_DASH_DOT_DOTTED,
#SLANTED_MEDIUM_DASH_DOTTED, or 0x00 through 0x0D.
borders.right = xlwt.Borders.DASHED
borders.top = xlwt.Borders.DASHED
borders.bottom = xlwt.Borders.DASHED
borders.left_colour = 0x40
borders.right_colour = 0x40
borders.top_colour = 0x40
borders.bottom_colour = 0x40
style = xlwt.XFStyle() # Create Style
style.borders = borders # Add Borders to Style

9、设置单元格中内容中位置,居中,局左右等
alignment = xlwt.Alignment() # Create Alignment
# May be: HORZ_GENERAL, HORZ_LEFT, HORZ_CENTER, HORZ_RIGHT,
#HORZ_FILLED, HORZ_JUSTIFIED, HORZ_CENTER_ACROSS_SEL, HORZ_DISTRIBUTED
alignment.horz = xlwt.Alignment.HORZ_CENTER #水平居中
# May be: VERT_TOP, VERT_CENTER, VERT_BOTTOM, VERT_JUSTIFIED, VERT_DISTRIBUTED
alignment.vert = xlwt.Alignment.VERT_CENTER #垂直居中
style = xlwt.XFStyle() # Create Style
style.alignment = alignment # Add Alignment to Style
sheet.write(5, 5, 'Cell Contents', style)

python xlrd,xlwt 读写excel文件的更多相关文章
- 【转发】Python使用openpyxl读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...
- python使用xlrd模块读写Excel文件的方法
本文实例讲述了python使用xlrd模块读写Excel文件的方法.分享给大家供大家参考.具体如下: 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi ...
- Python使用openpyxl读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...
- python使用xlrd和xlwt读写Excel文件
版权声明:本文为博主原创文章,未经允许不得转载. 安装模块 如果使用的是Linux系统,并且安装了pip,可以直接使用pip安装xlrd, xlwt: pip install xlwt pip ins ...
- 自己总结python用xlrd\xlwt读写excel
1.首先安装xlrd\xlwt模块 xlrd模块下载地址: https://pypi.python.org/pypi/xlrd xlwt模块下载地址: https://pypi.python.org/ ...
- Python使用读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...
- python读写Excel文件的函数--使用xlrd/xlwt
python中读取Excel的模块或者说工具有很多,如以下几种: Packages 文档下载 说明 openpyxl Download | Documentation | Bitbucket The ...
- python读写Excel文件--使用xlrd模块读取,xlwt模块写入
一.安装xlrd模块和xlwt模块 1. 下载xlrd模块和xlwt模块 到python官网http://pypi.python.org/pypi/xlrd下载模块.下载的文件例如:xlrd-0.9. ...
- Python -- xlrd,xlwt,xlutils 读写同一个Excel
最近开始学习python,想做做简单的自动化测试,需要读写excel,然后就找到了xlrd来读取Excel文件,使用xlwt来生成Excel文件(可以控制Excel中单元格的格式),需要注意的是,用x ...
随机推荐
- 修改整个app的字体
在项目开发中 有时候为了一些好的UI效果 可能需要自定义字体 app导入字体库的教程网上有很多 导进去 修改plist文件 然后如何将整个app的字体都换成自定义的字体呢 一个个去写太麻烦了 ...
- 在mac中怎么显示隐藏文件夹
缺省情况下,在 Mac 下是不显示隐藏文件的,Finder 也未提供设置是否显示隐藏文件的选项,不像 Windows 下,有一个“文件夹选项“设置界面里可以控制,但这并不表示 Mac 下无法显示隐藏文 ...
- [记录]gulp compass
因为个人习惯用compass,所以gulp中,还是用compass进行编译scss文件. 1. 使用npm安装gulp-compass npm install gulp-compass --save- ...
- 读jQuery官方文档:样式
样式 使用jQuery,无论是设置或者获取元素样式都十分简便. // 支持驼峰式和分割线式,两种方式等价(原生JavaScript只支持驼峰式) $('h1').css('fontSize'); $( ...
- 1.2、Mybatis二级缓存测试
package me.gacl.test; import me.gacl.domain.User; import me.gacl.util.MyBatisUtil; import org.apache ...
- kettle Java Filter(表达式过滤)
- 对象创建型模式------Builder(生成器)
本文系转载,转载地址http://blog.sina.com.cn/s/blog_59b6af690100zj3l.html,只供自己学习使用. 假设现在有三种产品,是玩具,都是由三部分组成,头,身体 ...
- <转载>国外程序员推荐的免费编程书籍资源
一.George Stocker 提供了一大串,分类如下: How to Design Programs: An Introduction to Computing and Programming 2 ...
- 通过google找网站后台的方法
转自:http://cyuyanbiancheng.blog.hexun.com/69239903_d.html site:url.com '查看这个站点上的信息最好不加www,可以查看到不少的二级域 ...
- Java线程练习
/*线程练习创建两个线程,与主线程交替运行 */ class Text extends Thread{ private String name; Text(String name) ...