在python自动化中,经常会遇到对数据文件的操作,比如添加多名员工,但是直接将员工数据写在python文件中,不但工作量大,要是以后再次遇到类似批量数据操作还会写在python文件中吗?

应对这一问题,可以将数据写excel文件,针对excel 文件进行操作,完美解决。

本文仅介绍python对excel的操作

安装xlrd 库

pip install xlrd

笔者在安装时使用了 pip3 install xlrd

原因:笔者同时安装了python2 和 python3

如果pip的话会默认将库安装到python2中,python3中不能直接调用。

那么到底是使用pip 还是pip3进行安装呢?

如果系统中只安装了Python2,那么就只能使用pip。

如果系统中只安装了Python3,那么既可以使用pip也可以使用pip3,二者是等价的。

如果系统中同时安装了Python2和Python3,则pip默认给Python2用,pip3指定给Python3用。

Xlrd 库简单的使用

以如下excel文件为例进行操作

文件名为demo,有两个sheet,名为工作表1和工作表2

工作表1中有如下数据

简单的使用

#coding=utf-8

importxlrd#打开文件

data = xlrd.open_workbook('file/demo.xlsx')#查看工作表

data.sheet_names()print("sheets:" +str(data.sheet_names()))#通过文件名获得工作表,获取工作表1

table = data.sheet_by_name('工作表1')#打印data.sheet_names()可发现,返回的值为一个列表,通过对列表索引操作获得工作表1#table = data.sheet_by_index(0)

#获取行数和列数#行数:table.nrows#列数:table.ncols

print("总行数:" +str(table.nrows))print("总列数:" +str(table.ncols))#获取整行的值 和整列的值,返回的结果为数组#整行值:table.row_values(start,end)#整列值:table.col_values(start,end)#参数 start 为从第几个开始打印,#end为打印到那个位置结束,默认为none

print("整行值:" +str(table.row_values(0)))print("整列值:" + str(table.col_values(1)))#获取某个单元格的值,例如获取B3单元格值

cel_B3 = table.cell(3,2).valueprint("第三行第二列的值:" + cel_B3)

运行后结果

项目中使用

获得所有的数据

1 #coding=utf-8

2

3 importxlrd4

5 defread_xlrd(excelFile):6 data =xlrd.open_workbook(excelFile)7 table =data.sheet_by_index(0)8

9 for rowNum inrange(table.nrows):10 rowVale =table.row_values(rowNum)11 for colNum inrange(table.ncols):12 if rowNum > 0 and colNum ==0:13 print(int(rowVale[0]))14 else:15 print(rowVale[colNum])16 print("---------------")17

18 #if判断是将 id 进行格式化

19 #print("未格式化Id的数据:")

20 #print(table.cell(1, 0))

21 #结果:number:1001.0

22

23

24 if __name__ == '__main__':25 excelFile = 'file/demo.xlsx'

26 read_xlrd(excelFile=excelFile)

结果

如果在项目中使用则可将内容方法稍为做修改,获得所有的数据后,将每一行数据作为数组进行返回

1 #coding=utf-8

2

3 importxlrd4

5 defread_xlrd(excelFile):6 data =xlrd.open_workbook(excelFile)7 table =data.sheet_by_index(0)8 dataFile =[]9

10 for rowNum inrange(table.nrows):11 #if 去掉表头

12 if rowNum >0:13 dataFile.append(table.row_values(rowNum))14

15 returndataFile16

17

18 if __name__ == '__main__':19 excelFile = 'file/demo.xlsx'

20 print(read_xlrd(excelFile=excelFile))

结果

python怎么读取excel-python对Excel的读取相关推荐

  1. Python 技术篇 - 用xlrd库和xlwt库操作excel,对excel进行读取和写入实例演示

    首先你需要安装 xlrd 和 xlwt 这两个库,一个是读库,一个是写库. 先来说一下这两个库的局限性: 局限性一: 不能用于 xlsx 文件 局限性二: 写的时候不能写入已有的文件,只能重新建 解决 ...

  2. python从数据库取数据保存为excel_python读取数据库表数据并写入excel

    #!/usr/bin/env python#-*- coding: utf-8 -*- '''@Time : 2020/1/1 18:08 @Author : Jason.Jia @contact: ...

  3. 【Python】xlwt和xlrd模块写入和读取.xls版本EXCEL

    我们经常与EXCEL打交道,其实我们可以使用python的相应模块去处理EXCEL文件.2003以前的表格以.xls后缀,用xlwt来写表格,用xlrd来读取表格:搭配xlutils修改表格.2007 ...

  4. Python对Excel的常规操作 之 读取带密码的文件,解除Sheet密码

    Python对Excel的常规操作 之 读取带密码的文件,解除Sheet密码 一些废话 读取加密的Excel 解除文件中Sheet的密码 写在后面 一些废话 最近一直在给部门写一个参数校验的小程序.因 ...

  5. Python按单元格读取复杂电子表格(Excel)数据实践

    Python读取电子表格方法 本文所使用电子表格的目标是读取.解析来自Excel编制的数据报表,或者软件界面导出的数据报表,这类电子表格报表显著特点是有一定的格式,且数据位置不连续,而非标准二维数据表 ...

  6. python读取excel内容和写入_Python读取和写入Excel文件

    制作Excel表 常用方法说明 Workbook类 Workbook类创建一个XlswWrite的Workbook对象,相当于创建一个excel表 And_worksheet()用来创建工作表,默认为 ...

  7. python怎么从excel获取数据_python如何读取excel表数据

    python读取excel表数据的方法:首先安装Excel读取数据的库xlrd:然后获取Excel文件的位置并且读取进来:接着读取指定的行和列的内容,并将内容存储在列表中:最后运行程序即可. pyth ...

  8. python读取json文件转成excel_Python实现读取json文件到excel表

    这篇文章主要介绍了Python实现读取json文件到excel表,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Python实现读取json文件到excel表,供大家参考,具体 ...

  9. python读取20万数据Excel文件+拆分数据

    python读取20万数据Excel文件 使用普通的pandas读取Excel,再结合xlrd读取,可能会读取的Excel数据会不全,最多只能读取到65535+行的数,如果读取超大excel数据时就读 ...

  10. python读取xlsx python读取excel数据

    如题 python pandas读取excel数据 如何读取特定sheet的excel数据 1.安装pandas 已经有的可以不用再安装 >pip install pandas 2.读取数据 首 ...

最新文章

  1. 从一个servlet转发到另一个servlet_javaweb02-创建第一个Servlet
  2. java用流体加减乘除_任意输入两个数,完成加法、减法、乘法、除法运算!(加减乘除运算分别定义四个方法)_学小易找答案...
  3. JQUERY使选定DOM元素还原end
  4. java对日期Date类进行加减运算、年份加减,月份加减
  5. opencv 轮廓特征
  6. php和python-PHP和Python性能比较:放弃PHP改用Python
  7. Python调用海康威视网络相机之——python读取相机rtsp码流显示画面
  8. JavaScript计算器(加减乘除完善)
  9. SQL Server 2005安装错误:缺少MSXML6解决
  10. [Python] 必应搜索主页的背景图片爬虫
  11. 什么是cookie?多御安全浏览器如何启用cookie?
  12. 如何访问一个互联网上的xap文件
  13. Linux date 命令
  14. h5获取视频的第一帧
  15. Frame profiling
  16. asp.net模糊查询
  17. 人物-商界-杨惠妍:杨惠妍
  18. 虚拟机中Ubuntu设置共享文件夹
  19. 投资人阎焱:为什么中国创业 成功率低于1%
  20. 软件下载去哪下,选择什么样的软件?

热门文章

  1. LeetCode 416. 分割等和子集(动态规划)(0-1背包)
  2. Mock以及Mockito的使用
  3. 第四天:制作网页的基本操作
  4. android 选择多选图片
  5. 在两个ASP.NET页面之间传递值
  6. UVA11309 Counting Chaos【Ad Hoc】
  7. 2019 ICPC中国邀请赛(南昌)暨国际丝绸之路程序设计竞赛-网络赛题解
  8. AOJ0118 Property Distribution【DFS】
  9. HDU1406 完数【水题】
  10. CCF201604试题