萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> python使用xlrd實現檢索excel中某列含有指定字符串記錄的方法

python使用xlrd實現檢索excel中某列含有指定字符串記錄的方法

   這篇文章主要介紹了python使用xlrd實現檢索excel中某列含有指定字符串記錄的方法,涉及Python使用xlrd模塊檢索Excel的技巧,非常具有實用價值,需要的朋友可以參考下

  本文實例講述了python使用xlrd實現檢索excel中某列含有指定字符串記錄的方法。分享給大家供大家參考。具體分析如下:

  這裡利用xlrd,將excel中某列數據中,含有指定字符串的記錄取出,並生成用這個字符串命名的txt文件

  ?

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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 import os import xlrd,sys # input the excel file Filename=raw_input('input the file name&path:') if not os.path.isfile(Filename): raise NameError,"%s is not a valid filename"%Filename #open the excel file bk=xlrd.open_workbook(Filename) #get the sheets number shxrange=range(bk.nsheets) print shxrange #get the sheets name for x in shxrange: p=bk.sheets()[x].name.encode('utf-8') print "Sheets Number(%s): %s" %(x,p.decode('utf-8')) # input your sheets name sname=int(raw_input('choose the sheet number:')) try: sh=bk.sheets()[sname] except: print "no this sheet" #return None nrows=sh.nrows ncols=sh.ncols # return the lines and col number print "line:%d col:%d" %(nrows,ncols) #input the check column columnnum=int(raw_input('which column you want to check pls input the num(the first colnumn num is 0):')) while columnnum+1>ncols: columnnum=int(raw_input('your num is out of range,pls input again:')) # input the searching string and column testin=raw_input('input the string:') #find the cols and save to a txt outputfilename=testin + '.txt' outputfile=open(outputfilename,'w') #find the rows which you want to select and write to a txt file for i in range(nrows): cell_value=sh.cell_value(i, columnnum) if testin in str(cell_value): outputs=sh.row_values(i) for tim in outputs: outputfile.write('%s ' %(tim)) outputfile.write('%s' %(os.linesep)) outputfile.close()

  希望本文所述對大家的Python程序設計有所幫助。

copyright © 萬盛學電腦網 all rights reserved