VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python爬虫 >
  • 读取Excel——xlrd(2)

#继续判断列是否满足条件 count_w = 0 count_row = 0 for w in range(rowst,nrows+1): data_w = sheet.cell(w-1,colst-1).value #读取关键字所在列的数据 if data_w != "": #如果单元格内容不为空 count_row+=1 #自加一,统计有数据的单元格个数 if (data_w=='P' or data_w=='Fp' or data_w=='F'): count_w+=1 #自加一,统计含有关键字的单元格个数 if count_w == count_row: #如果两者的数量相等,则可以确定该关键字所在列全为P/Fp/F print (rowst,end=',') print (colst) return #确定首位满足条件的单元格即退出循环
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

Tips1:

if data_l == "":
  • 1

""表示单元格数据为空,有框线无内容也为空。 如果写成

if data_l == None:
  • 1

None也表示单元格内容为空,但是有框线无内容不判定为空。

Tips2:

count_l+=1

表示变量自加一,也可以写成:

count_l = count_l +1

Tips3:

print (rowst,end=’,’) print (colst)

end=’'表示输出结果不换行显示,‘,’表示用逗号隔开,则输出结果表示为(rowst,colst)。

5. 统计数据并将结果保存为数组

代码如下:

global count_P
global count_Fp
global count_F

count_P = 0
count_Fp = 0
count_F = 0

list = []  #创建一个空数组列表

for m in range(rowst,nrowst+1):
  for n in range(colst,ncols+1):
    data2 = sheet.cell(m-1,n-1).value
    
    if data2 == 'P':
      count_P+=1  #统计P的数量
    elif data2 == 'Fp':
      count_Fp+=1  #统计Fp的数量
    elif data2 == 'F':
      count_F+=1  #统计F的数量
total = count_P + count_Fp + count_F

list.append(count_P)
list.append(count_Fp)
list.append(count_F)
list.append(total)

print (list)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

Tips1:append()函数用于在列表末尾添加新的对象。 Tips2:将结果保存成数组是为了方便后续将数据写入新的Excel。


相关教程