# 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. 在 Android 中进程的级别有哪些?

    a) Foreground processb) Visible processc) Service processd) Background processe) Empty process

  2. SuperSocket 学习笔记-客户端

    客户端: 定义 private AsyncTcpSession client; 初始化 client = new AsyncTcpSession(); client.Connected += Clie ...

  3. unity shader 波动圈

    c# //////////////////////////////////////////// // CameraFilterPack - by VETASOFT 2018 ///// /////// ...

  4. 描述下什么是springcloud,springcloud中的组件有哪些?分别描述下它的原理?

    1.什么是springcloud,springcloud中的组件有哪些? Spring cloud是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务:就是把 ...

  5. ftp服务器三种模式

    一.匿名开放模式(最不安全) 1.[root@localhost ~]# vim  /etc/vsftpd/vsftpd.conf  (主配置) anonymous_enable=YES    //允 ...

  6. 炼丹的一些trick

    采摘一些大佬的果实: 知乎:如何理解深度学习分布式训练中的large batch size与learning rate的关系? https://blog.csdn.net/shanglianlm/ar ...

  7. CF-Div.3-B. Minimize the Permutation【模拟·需要清醒的脑子】

    题目传送门 根据字典序,是个人都会想到依次把目前最小的数尽量往前面移动,直到它不能再往前移动,或者已经到了它的期望位置(就是排列的那个位置 比如$i$就应该在位置$i$)为止. 所以我刚开始是这么写的 ...

  8. Mysql 字段类型与查询类型不一致导致索引使用失败

    今天优化数据库的慢查询,有一条Sql让我百思不得其jie,就是他了. SELECT * FROM test WHERE user_id=1; 用explain 去分析一下 索引都有了,为什么还要扫描全 ...

  9. 记一则update 发生enq: TX - row lock contention 的处理方法

    根据事后在虚拟机中复现客户现场发生的情况,做一次记录(简化部分过程,原理不变) 客户端1执行update语句 SQL> select * from test; ID NAME --------- ...

  10. 2015沈阳区域赛Meeting(最短路 + 建图)

    Meeting Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...