python怎么读入excelpython如何判断excel单元格为空_如何⽤python处理
excel(⼆)
读取excel
import xlrd
workbook=xlrd.open_workbook(r'C:\Users\Desktop\hebing\学⽣登记表.xls')
sheet=workbook.sheet_by_index(0)#根据序列号来打开某⼀个ws#将excel的⾏数赋值给变量ls#将excel的列数赋值给变量print(she 还是昨天那个excel:
上⾯的代码是打印出第⼆⾏第⼀列的单元格,打印结果是⼩明.
以此类推,你可以打印出所有你指定的单元格的数据.
但是有时候我们想迅速查某⼀些数据,⽐如我不知道⼩红是第⼏⾏第⼏列,我想显⽰⼩红的所有资料该怎么做呢?
for i in range(row):if '⼩红' w_values(i):w_values(i))
⾸先第⼀⾏写⼀个for循环,循环的范围是excel的⾏数
然后我么⽤row_values()来获取excel每⼀⾏的数据,括号⾥⾯是什么数字,就会抓取那⼀⾏所有的数据.
⽽row_values的结果会返回⼀个列表,每⼀个单元格都是这个列表⾥⾯的⼀个元素,因此这⾥我们⽤if语句来判断⼩红是否在这个列表之中,如
果在,我们就把这⼀整⾏的数据都打印出来.
这个逻辑不难吧?觉得难的同学你前⾯的python基础⼀定没有打扎实.
那么还有⼀种情况,就是我们只记得某⼀个数据的部分内容,该怎么查数据呢?
⽐如这⾥⾯我忘了⼩明的名字,只知道名字⾥⾯带有⼀个"明"字,那我如何查到数据呢?
for i in range(row):for j in range(col):if ll_value(i,j)).find('明')!=-1:w_values(i))
⾸先来两个循环,⼀个是为了遍历excel的⾏数,⼀个是为了遍历列数.
然后我们对每个单元格逐个进⾏判断,判断单元格是否包含"明"这个字,如果到了,那么我们就打印出这⼀⾏的所有数据.
这⾥主要有两点注意:
⼀:
这⾥主要是find()函数的运⽤.
find()函数⾥⾯可以传递两个参数,find(参数1,参数2).
参数1是你要查的⽬标,⽐如我们这⾥查的是"明"这个字.
⽽参数2指的是你要从第⼏位开始查.
⽐如有⼀串字符串"⼩明⼩东⼤明"
如果我们对这个字符串进⾏查,我们想查第⼆个明出现的位置,那么我们就可以:
"⼩明⼩东⼤明".find('明',2)
2的意思是让find函数从第三个位置开始查,这样程序就会忽略第⼀个明,来查第⼆个明的位置.
find函数如果查到了,就会返回所在的索引位置,如果没有查到,就会返回-1.因此我们在例⼦⾥⾯写的是不等于-1.不等于-1意思就是到"明"这个字符串.
⼆:
我们在
前⾯加了str().
之所以要加str是为了把每⼀个单元格都转化成字符串.
为什么呢?
我们都知道excel⾥⾯的数据含有很多的格式,⽐如⼩数点,⽐如⽇期,⽐如整数等等,⽽find函数只能对字符串进⾏查,因此如果不⽤str的话,当程序遍历到⼀个⾮字符串的单元格数据时,程序就会报错.
很简单吧?
如果觉得难,那么回头看看前⾯的python基础,了解基本的语法以后再来看.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论