詳解python中xlrd包的安裝與處理Excel表格
一、安裝xlrd
下載后,使用 pip install .whl
安裝即好。
查看幫助:
>>> import xlrd >>> help(xlrd) Help on package xlrd: NAME xlrd PACKAGE CONTENTS biffh book compdoc formatting formula info licences sheet timemachine xldate xlsx FUNCTIONS count_records(filename, outfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>) dump(filename, outfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>, unnumbered=False) open_workbook(filename=None, logfile=<idlelib.PyShell.PseudoOutputFile object at 0x0287E730>, verbosity=0, use_mmap=1, file_contents=None, encoding_override=None, formatting_info=False, on_demand=False, ragged_rows=False) DATA FMLA_TYPE_ARRAY = 4 FMLA_TYPE_CELL = 1 FMLA_TYPE_COND_FMT = 8 FMLA_TYPE_DATA_VAL = 16 FMLA_TYPE_NAME = 32 FMLA_TYPE_SHARED = 2 MMAP_AVAILABLE = 1 USE_MMAP = 1 XL_CELL_BLANK = 6 XL_CELL_BOOLEAN = 4 XL_CELL_DATE = 3 XL_CELL_EMPTY = 0 XL_CELL_ERROR = 5 XL_CELL_NUMBER = 2 XL_CELL_TEXT = 1 __VERSION__ = '1.0.0' biff_text_from_num = {0: '(not BIFF)', 20: '2.0', 21: '2.1', 30: '3', ... empty_cell = empty:'' error_text_from_code = {0: '#NULL!', 7: '#DIV/0!', 15: '#VALUE!', 23: ... oBOOL = 3 oERR = 4 oNUM = 2 oREF = -1 oREL = -2 oSTRG = 1 oUNK = 0 okind_dict = {-2: 'oREL', -1: 'oREF', 0: 'oUNK', 1: 'oSTRG', 2: 'oNUM'... FILE c:\python34\lib\site-packages\xlrd\__init__.py
通過上述方法可以查看xlrd的幫助信息,里面有xlrd包中的一些模塊以及一些成員變量、常量、函數(shù)。
二、python處理Excel表格
1、打開Excel表
import xlrd # 獲取一個Book對象 book = xlrd.open_workbook("1.xls") # 獲取一個sheet對象的列表 sheets = book.sheets() # 遍歷每一個sheet,輸出這個sheet的名字(如果是新建的一個xls表,可能是sheet1、sheet2、sheet3) for sheet in sheets: print(sheet.name)
上面的幫助信息出現(xiàn)了這個函數(shù):open_workbook()
,打開工作簿,這就打開了Excel表。
返回的是一個Book對象,通過Book對象我們可以獲得一個Sheet的列表,上面的程序就簡單地把每個sheet的名字都輸了出來。
2、讀出指定單元格內(nèi)的數(shù)據(jù)
import xlrd # 獲取一個Book對象 book = xlrd.open_workbook("1.xls") # 獲取一個sheet對象的列表 sheets = book.sheets() # 遍歷每一個sheet,輸出這個sheet的名字(如果是新建的一個xls表,可能是sheet1、sheet2、sheet3) for sheet in sheets: print(sheet.cell_value(0, 0))
讀出單元格內(nèi)數(shù)據(jù)函數(shù) cell_value(row, col)
,行列均從0起。
除此之外,可以通過:
sheet.cell(row, col) # 獲取單元格對象 sheet.cell_type(row, col) # 獲取單元格類型
3、讀取日期數(shù)據(jù)
如果Excel存儲的某一個單元格數(shù)據(jù)是日期的話,需要進行一下處理,轉換為datetime
類型
from datetime import datetime from xlrd import xldate_as_tuple # 獲取一個Book對象 book = xlrd.open_workbook("1.xls") # 獲取一個sheet對象的列表 sheets = book.sheets() timeVal = sheets[0].cell_value(0,0) timestamp = datetime(*xldate_as_tuple(timestamp, 0)) print(timestamp)
4、遍歷每行的數(shù)據(jù)
rows = sheet.get_rows() for row in rows: print(row[0].value) # 輸出此行第一列的數(shù)據(jù)
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家學習或者使用python能帶來一定的幫助,如果有疑問大家可以留言交流。
相關文章
python 根據(jù)正則表達式提取指定的內(nèi)容實例詳解
這篇文章主要介紹了python 根據(jù)正則表達式提取指定的內(nèi)容實例詳解的相關資料,需要的朋友可以參考下2016-12-12