一、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)的更多相关文章

  1. python3对excel文件读写操作

    ===========================excelfile文件============================================ ================= ...

  2. excel、xls文件读写操作

    python 常用的excel.xls文件读写操作,有两个模块 xlrd:读 xlwt:写 本次先写一个读的例子: class CaseData(object): def __init__(self, ...

  3. 使用Python对Excel进行读写操作

    学习Python的过程中,我们会遇到Excel的读写问题.这时,我们可以使用xlwt模块将数据写入Excel表格中,使用xlrd模块从Excel中读取数据.下面我们介绍如何实现使用Python对Exc ...

  4. Python—对Excel进行读写操作

    学习Python的过程中,我们会遇到Excel的读写问题.通过搜索得知,我们可以使用xlwt module将数据写入Excel表格,使用xlrd module从Excel读取数据.下面介绍如何实现使用 ...

  5. JAVA对Excel文件进行操作

    JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...

  6. c语言文件读写操作总结

    C语言文件读写操作总结 C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程 ...

  7. [转]Android - 文件读写操作 总结

     转自:http://blog.csdn.net/ztp800201/article/details/7322110 Android - 文件读写操作 总结 分类: Android2012-03-05 ...

  8. PHP文件读写操作之文件写入代码

    在PHP网站开发中,存储数据通常有两种方式,一种以文本文件方式存储,比如txt文件,一种是以数据库方式存储,比如Mysql,相对于数据库存储,文件存储并没有什么优势,但是文件读写操作在基本的PHP开发 ...

  9. Java 字节流实现文件读写操作(InputStream-OutputStream)

    Java 字节流实现文件读写操作(InputStream-OutputStream) 备注:字节流比字符流底层,但是效率底下. 字符流地址:http://pengyan5945.iteye.com/b ...

随机推荐

  1. 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 ...

  2. 启动一个线程是调用 run()还是 start()方法?

    启动一个线程是调用 start()方法,使线程所代表的虚拟处理机处于可运行状态, 这意味着它可以由 JVM 调度并执行,这并不意味着线程就会立即运行.run()方 法是线程启动后要进行回调(callb ...

  3. Java中的引用类型

    强引用(Strong) 就是我们平时使用的方式 A a = new A();强引用的对象是不会被回收的 软引用(Soft) 在jvm要内存溢出(OOM)时,会回收软引用的对象,释放更多内存 弱引用(W ...

  4. 一个 Redis 实例最多能存放多少的 keys?List、Set、 Sorted Set 他们最多能存放多少元素?

    理论上 Redis 可以处理多达 232 的 keys,并且在实际中进行了测试,每个实 例至少存放了 2 亿 5 千万的 keys.我们正在测试一些较大的值.任何 list.set. 和 sorted ...

  5. [C/C++基础知识] main函数的参数argc和argv

    该篇文章主要是关于C++\C语言最基础的main函数的参数知识,是学习C++或C语言都必备的知识点.不知道你是否知道该知识?希望对大家有所帮助.一.main()函数参数通常我们在写主函数时都是void ...

  6. PCB中的生产工艺、USB布线、特殊部件、蓝牙天线设计

    PCB中的生产工艺.USB布线.特殊部件.蓝牙天线设计 (2016-07-20 11:43:27) 转载▼     PCB生产中Mark点设计 1.pcb必须在板长边对角线上有一对应整板定位的Mark ...

  7. PHP基于Thinkphp5的砍价活动相关设计

    近期我们公司项目里陆陆续续有很多为了招引新用户的活动推出,砍价的活动由我来负责,我们的项目是在微信浏览器里供用户浏览访问. 大概描述:进入砍价活动列表页选择有意向的商品,用户点击商品图片可以看到WEB ...

  8. 关于Symbol.iterator 学习笔记

    1.可以部署在对象上的一个遍历器 2. 遍历器是一个函数,需要返回一个含有一个next 方法的对象 const likeArray = {0:'a', 1: 'b', 2: 'c',3: 'd'. l ...

  9. 在Wireshrak中使用过滤器——捕获过滤器

    过滤器可以让你找出你所希望进行分析的数据包.简单来说,一个过滤器就是定义了一定条件,用来包含或者排除数据包的表达式.如果你不希望看到一些数据包,你可以写一恶搞过滤器来屏蔽它们.如果你希望只看到某些数据 ...

  10. spring原始注解开发-01

    我们使用xml-Bean标签的配置方式和注解做对比理解 1.创建UserDao接口以及UserDao的实现类UserDaoImpl(接口代码省略) public class UserDaoImpl i ...