Python讀取Excel數據


  今天一同學給我發來一個Excel文件,讓我幫他找一些信息,打開一開 8000多條數據。自己手工處理是不可能完成的的啦。作為一名程序員,當然要用程序來處理。處理生活中的問題當然是Python最為方便啦。利用萬能的 Google 搜索 Python Excel,點擊第一條結果http://www.python-excel.org/ ,發先這個東西 能夠跨平台處理 Excel。廢話不多說,按照文檔一步步去做,要安裝 三個包 xlrd(用於讀Excel), xlwt(用於寫Excel),xlutils(處理Excel的工具箱)。

  上面的英文文檔很齊全,這里就不多說了,因為我只需要獲取Excel里面的數據,所以只要簡單的讀取出來。

 1 from xlrd import open_workbook
 2 import re
 3 
 4 #創建一個用於讀取sheet的生成器,依次生成每行數據,row_count 用於指定讀取多少行, col_count 指定用於讀取多少列
 5 def readsheet(s, row_count=-1, col_cout=-1):#
 6     # Sheet 有多少行
 7     nrows = s.nrows
 8     # Sheet 有多少列
 9     ncols = s.ncols
10     row_count = (row_count if row_count > 0 else nrows)
11     col_count = (col_count if col_count > 0 else ncols)
12     row_index = 0
13     while row_index < row_count:
14         yield [s.cell(row_index, col).value for col in xrange(col_count)]
15         row_index += 1
16 
17 wb = open_workbook('simple.xls') #打開Excel文件
18 # 讀取Excel中所有的Sheet
19 for s in wb.sheets():
20     for row in readsheet(s, 10, 10):# 只讀取每個Sheet的前10行,前10列(當然你要確保,你的數據多余10行,且多余10列)
21         print row

  非常簡單, 主要用到 xlrd 四個特性 open_workbook , wb.sheets(), s.nrows-(行數),s.ncols -(列數),  s.cell(row, col).value- (獲取指定單位處的值)。

  這幾個函數用於處理一般的讀取操作完全夠了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM