Excel文件读写操作1(xls)
一、Python-Excel常用的库:xlrd(read)、xlwt(write)、xlutils、openpyxl
1、xlrd 读取Excel文件,支持 .xls 和 .xlsx 格式。
2、xlwt 写入Excel文件,只支持 .xls 格式。
3、xlutils 操作Excel文件的实用工具,如复制、分割、筛选等。
4、openpyxl 既可以读文件、也可以写文件、也可以修改文件;但是openpyxl库不支持xls格式的Excel文档,如果要读写xls格式的文档,可以使用Excel进行相应的格式转化,或者使用xlwt库进行写的操作。
二、安装xlwt、xlrd库
1、安装xlwt库
pip install xlwt
pip install xlwt -i http://pypi.douban.com/simple/

2、安装xlrd库
pip install xlrd
pip install xlrd -i http://pypi.douban.com/simple/

3、查看已安装的库
pip list
pip show xlwt
三、xlwt创建xls文件并写入数据
xlwt创建xls文件并写入操作步骤
1、导包:import xlwt
2、创建一个对象(.xls文件):book1 = xlwt.Workbook(encoding='utf-8')
3、添加一个sheet工作表:sheet1 = book1.add_sheet('info')
4、添加内容:
方式一:
sheet1.write(0, 0, 'username')
sheet1.write(0, 1, 'password')
方式二:
row2 = ['admin', '123456']
for i in range(len(row2)):
sheet1.write(1, i, row2[i])
5、保存文件:book1.save('login.xls')

四、 xlwt打开已有xls文件并写入数据
把数据写入已存在的Excel,需要使用xutils库
1、打开已有xsl文件:xlrd.open_workbook('login.xls', formatting_info=True)
2、注意添加参数formatting_info=True,得以保存之前数据的格式。
3、使用xutils中copy拷贝出一份,成为新的xlwt的Workbook变量:
4、通过get_sheet去获得对应的sheet,拿到sheet变量后,往sheet写入新的数据
5、写完数据后,save保存

五、xlrd库读取excel
xlrd是个跨平台的库,能够在windows、linux/unix等平台上使用,xlrd支持读取.xls和.xlsx的Excel文件,只支持读取,不支持写入。
1、导包:import xlrd
2、打开一个文件(.xls或.xlsx文件):book = xlrd.open_workbook('login.xls')
3、使用sheet工作表:
sheet名称:sh1 = book.sheet_by_name('info')
sheet索引:sh1 = book.sheet_by_index(0)
4、读取sheet工作表的属性信息
当前sheet名称:sh1.name
当前sheet的总行数:sh1.nrows
当前sheet的总列数:sh1.ncols
xls/xlsx文件所有sheet名称:book.sheet_names()
5、读取sheet工作表存储的文本内容:
读取某一行:row1 = sh1.row_values(0)
读取某一列:col1 = sh1.col_values(0)
读取某一个单元格:
cell = sh1.cell_value(0,0)
cell = sh1.cell(0,1).value
1 import xlrd
2
3 # 打开文件
4 book1 = xlrd.open_workbook('login.xls')
5 # 获取名为info的sheet
6 she1 = book1.sheet_by_name('info')
7 # 当前sheet名字
8 sname = she1.name
9 print(sname)
10 # 当前行数
11 rows = she1.nrows
12 print(rows)
13 # 当前列数
14 cols = she1.ncols
15 print(cols)
16 # 所以sheet的名称
17 all_sheet = book1.sheet_names()
18 print(all_sheet)
19 # 第一行第一列内容
20 A1 = she1.cell(0, 0).value
21 print(A1)
22 # 第二行内容
23 row1 = she1.row_values(1)
24 print(row1)
25 # 第二列内容
26 col1 = she1.col_values(1)
27 print(col1)
28 # 第四行,第一列,取两个
29 row4_col3 = she1.row_values(3,0,2)
30 print(row4_col3)
Excel文件读写操作1(xls)的更多相关文章
- python3对excel文件读写操作
===========================excelfile文件============================================ ================= ...
- excel、xls文件读写操作
python 常用的excel.xls文件读写操作,有两个模块 xlrd:读 xlwt:写 本次先写一个读的例子: class CaseData(object): def __init__(self, ...
- 使用Python对Excel进行读写操作
学习Python的过程中,我们会遇到Excel的读写问题.这时,我们可以使用xlwt模块将数据写入Excel表格中,使用xlrd模块从Excel中读取数据.下面我们介绍如何实现使用Python对Exc ...
- Python—对Excel进行读写操作
学习Python的过程中,我们会遇到Excel的读写问题.通过搜索得知,我们可以使用xlwt module将数据写入Excel表格,使用xlrd module从Excel读取数据.下面介绍如何实现使用 ...
- JAVA对Excel文件进行操作
JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...
- c语言文件读写操作总结
C语言文件读写操作总结 C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程 ...
- [转]Android - 文件读写操作 总结
转自:http://blog.csdn.net/ztp800201/article/details/7322110 Android - 文件读写操作 总结 分类: Android2012-03-05 ...
- PHP文件读写操作之文件写入代码
在PHP网站开发中,存储数据通常有两种方式,一种以文本文件方式存储,比如txt文件,一种是以数据库方式存储,比如Mysql,相对于数据库存储,文件存储并没有什么优势,但是文件读写操作在基本的PHP开发 ...
- Java 字节流实现文件读写操作(InputStream-OutputStream)
Java 字节流实现文件读写操作(InputStream-OutputStream) 备注:字节流比字符流底层,但是效率底下. 字符流地址:http://pengyan5945.iteye.com/b ...
随机推荐
- org.apache.kafka.common.errors.SerializationException: Error deserializing... Caused by: org.apache.kafka.common.errors.SerializationException: Size of data received by IntegerDeserializer is not 4
原因,最近开发的kafka消息接收,突然报如下错: org.apache.kafka.common.errors.SerializationException: Error deserializing ...
- 启动一个线程是调用 run()还是 start()方法?
启动一个线程是调用 start()方法,使线程所代表的虚拟处理机处于可运行状态, 这意味着它可以由 JVM 调度并执行,这并不意味着线程就会立即运行.run()方 法是线程启动后要进行回调(callb ...
- Java中的引用类型
强引用(Strong) 就是我们平时使用的方式 A a = new A();强引用的对象是不会被回收的 软引用(Soft) 在jvm要内存溢出(OOM)时,会回收软引用的对象,释放更多内存 弱引用(W ...
- 一个 Redis 实例最多能存放多少的 keys?List、Set、 Sorted Set 他们最多能存放多少元素?
理论上 Redis 可以处理多达 232 的 keys,并且在实际中进行了测试,每个实 例至少存放了 2 亿 5 千万的 keys.我们正在测试一些较大的值.任何 list.set. 和 sorted ...
- [C/C++基础知识] main函数的参数argc和argv
该篇文章主要是关于C++\C语言最基础的main函数的参数知识,是学习C++或C语言都必备的知识点.不知道你是否知道该知识?希望对大家有所帮助.一.main()函数参数通常我们在写主函数时都是void ...
- PCB中的生产工艺、USB布线、特殊部件、蓝牙天线设计
PCB中的生产工艺.USB布线.特殊部件.蓝牙天线设计 (2016-07-20 11:43:27) 转载▼ PCB生产中Mark点设计 1.pcb必须在板长边对角线上有一对应整板定位的Mark ...
- PHP基于Thinkphp5的砍价活动相关设计
近期我们公司项目里陆陆续续有很多为了招引新用户的活动推出,砍价的活动由我来负责,我们的项目是在微信浏览器里供用户浏览访问. 大概描述:进入砍价活动列表页选择有意向的商品,用户点击商品图片可以看到WEB ...
- 关于Symbol.iterator 学习笔记
1.可以部署在对象上的一个遍历器 2. 遍历器是一个函数,需要返回一个含有一个next 方法的对象 const likeArray = {0:'a', 1: 'b', 2: 'c',3: 'd'. l ...
- 在Wireshrak中使用过滤器——捕获过滤器
过滤器可以让你找出你所希望进行分析的数据包.简单来说,一个过滤器就是定义了一定条件,用来包含或者排除数据包的表达式.如果你不希望看到一些数据包,你可以写一恶搞过滤器来屏蔽它们.如果你希望只看到某些数据 ...
- spring原始注解开发-01
我们使用xml-Bean标签的配置方式和注解做对比理解 1.创建UserDao接口以及UserDao的实现类UserDaoImpl(接口代码省略) public class UserDaoImpl i ...