# coding=utf-8

 print "----------------分割线 xlrd--------------------"
import xlrd
#打开一个wordbook
book = xlrd.open_workbook("excel_1.xls") worksheets = book.sheet_names() #获取所有sheet名称
# print 'workshets:',worksheets
# sheet = book.sheets() #获得全部sheet
# for item in sheet:
# print item.name sheet = book.sheet_by_index(0) #通过下标切换sheet
# sheet = book.sheet_by_name('wsf') #通过sheet的名称切换 rows = sheet.nrows #行数
cols = sheet.ncols #列数 r_data = sheet.row(1) #获取指定行数据,返回list
# print r_data #[text:u'LAD', text:u'V100R001C01B001', text:u'SDFA V100R001C01B001', empty:u'']
c_data = sheet.col(0) #获取指定列数据,返回list
# print c_data #[text:u'product name', text:u'LAD', text:u'DSF', text:u'ASD', text:u'EFSW']
ce_data = sheet.cell(1,1).value #获取指定单元格的数据
# print ce_data #获取sheet中的所有行数据
for row in xrange(rows):
r_data = sheet.row_values(row)
print r_data
#获取sheet中的所有列数据
for col in xrange(cols):
c_data = sheet.col_values(col)
print c_data
#获取sheet中所有单元格的数据
for row in xrange(rows):
for col in xrange(cols):
ce_data = sheet.cell_value(row, col)
print "cell:",ce_data print "----------------分割线 xlwt--------------------" import xlwt
'''xlwt不能操作已存在的excel,新建excel写入数据'''
#创建workbook对象
workbook = xlwt.Workbook()
#创建sheet对象,新建sheet
sheet1 = workbook.add_sheet('xlwt', cell_overwrite_ok=True)
sheet2 = workbook.add_sheet('xled', cell_overwrite_ok=True) #---设置excel样式---
#初始化样式
style = xlwt.XFStyle()
#创建字体样式
font = xlwt.Font()
font.name = 'Times New Roman'
font.bold = True #加粗
#设置字体
style.font = font
#使用样式写入数据
# sheet.write(0, 1, "xxxxx", style) #向sheet中写入数据
sheet1.write(0, 0, 'nihao xlwt', style)
sheet1.write(0, 1, 'nimei')
sheet2.write(0, 0, 'nihao xlrd', style)
sheet2.write(0, 1, 'nimei')
#保存excel文件,有同名的直接覆盖
workbook.save('xlwt.xls')
print 'the excel save success' print "----------------分割线 xlutils--------------------" from xlutils import copy
'''xlutils向excel文件中写入数据,与xlrd结合使用'''
#打开excel文件
rb = xlrd.open_workbook("xlwt.xls")
wb = copy.copy(rb) #copy副本进行写数据
#获取sheet对象,不能通过rb进行sheet的获取,xlrd没有write()方法
ws = wb.get_sheet(0)
ws.write(0, 0, '')
print "write success"
#必须要保存,保存为同名文件,未修改的部分保留
wb.save('xlwt.xls') print "----------------分割线 pyExcelerator read--------------------" import pyExcelerator as pyExcel
'''读excel文件数据,解析excel文件,返回整个excel的数据,返回list'''
##parse_xls返回一个列表,每项都是一个sheet页的数据。
#每项是一个二元组(表名,单元格数据)。其中单元格数据为一个字典,
#键值就是单元格的索引(i,j)。如果某个单元格无数据,那么就不存在这个值
sheets = pyExcel.parse_xls('xlwt.xls')
print sheets, type(sheets) print "----------------分割线 pyExcelerator write--------------------" '''pyExcelerator write与xlwt类似,都是新建excel来写入数据'''
wb = pyExcel.Workbook()
ws = wb.add_sheet(u'第一页')
#设置样式
style = pyExcel.XFStyle()
font = pyExcel.Font()
font.name = 'Times New Roamn'
font.bold = True
style.font = font
#写入数据,使用样式
ws.write(0, 0, u'你好', style)
print "write success"
wb.save('pyExcel.xls')

Python excel读写的更多相关文章

  1. python excel 读写

    python操作Excel读写--使用xlrd xlwt python中使用xlrd.xlwt操作excel表格详解

  2. python excel读写数据

    python 读取excel内容,包含表格日期处理 # -*- coding: utf- -*- import xlrd #读取excel表格 workbook=xlrd.open_workbook( ...

  3. 转 Python - openpyxl 读写操作Excel

    Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...

  4. Python - excel 详解

    安装 pip install xlrd        # 读xlspip install xlwt     # 写xlspip install xlutils     # 改写xls 读取 Excel ...

  5. python文件读写及形式转化和CGI的简单应用

    一丶python文件读写学习笔记 open() 将会返回一个 file 对象,基本语法格式如下: open(filename, mode) filename:包含了你要访问的文件名称的字符串值. mo ...

  6. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  7. Python excel 库:Openpyxl xlrd 对比 介绍

    打算用python做一个写mtk camera driver的自动化工具. 模板选用标准库里面string -> Template 即可 但要重定义替换字符,稍后说明 配置文件纠结几天:cfg, ...

  8. Python 3 读写文件的简单方法!

    Python 3 读写文件的简单方法! a = open('test.txt','w') 这行代码创建了一个名为test的文本文档,模式是写入(模式分为三种,w代表写入,r代表阅读,a代表在尾行添加) ...

  9. python excel操作总结

    1.openpyxl包的导入 Dos命令行输入 pip install openpyxl==2.3.3 这里注意一下openpyxl包的版本问题 版本装的太高有很多api不支持了,所以笔者这里用的是2 ...

随机推荐

  1. T83312 【音乐会】达拉崩吧·上

    T83312 [音乐会]达拉崩吧·上 题解 线段树板子题 把原来的 + 变成 ^ 但是注意一下懒标记,这里讲一下小技巧 代码 #include<bits/stdc++.h> using n ...

  2. cors 预请求

    1.CORS的其他限制 默认允许的方法只有:GET.HEAD.POST默认允许的Content-Type:text/plain.multipart/form-data.applicaton/x-www ...

  3. leetcode 452用少量的箭射爆气球

    类似于区间调度问题,使用贪心算法:首先对所有气球按照起始坐标大小排序,然后每次总是优先选择起始坐标小的气球中的右边坐标,然后再选择下一个: 排完序之后,下一个可能有如上图所示几种情况, 1)   当n ...

  4. BeanDefinition 解析流程【解析所有配置类】

    BeanDefinition 解析流程 BeanDefinition 解析入口:ConfigurationClassPostProcessor#postProcessBeanDefinitionReg ...

  5. 十七:jinja2之宏

    宏有点类似于函数,接收一些数据,进行处理,但是没有返回值,可以将一些常用的代码片段放到宏中,然后把不固定的值抽出来做变量 使用maacro来定义宏,使用宏的时候,参数可以设默认值 自定义一个input ...

  6. 部署php程序报错:站点已关闭

    场景: 之前把公司线上的php源码包拿到笔记本的虚拟机上测试部署,部署完成后通过浏览器访问总是出现站点已关闭 原因:把线上php程序配置文件config.php里面的数据库连接信息改成了笔记本虚拟机的 ...

  7. Tomcat 部署两个工程时,另一个访问出现404

    tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决 在开发新项目的时候,有时候为了省时,直接把曾经做过的项目工程A拷贝成改名为B工程,然后再在B工程上进行功能的开发, 此 ...

  8. spring5的基本组成(6个模块)

    1:数据访问及集成(Data Access/Integeration):jdbc,orm,oxm,jms,transactions ——由 spring-jdbc.spring-tx.spring-o ...

  9. 交换机安全学习笔记 第九~十章 HSRP VRRP

    HSRP  (Hot Standby Router Protocol) 热备份路由器协议 思科私有 HSRP消息使用UDP 端口号 1985(IPv6时为2029) 使用多播地址 224.0.0.2( ...

  10. MySQL数据库常用引擎

    在MySQL数据库中,常用的引擎主要就是2个:Innodb和MyIASM. 首先: 1.简单介绍这两种引擎,以及该如何去选择.2.这两种引擎所使用的数据结构是什么. 1. a.Innodb引擎,Inn ...