首頁  >  文章  >  後端開發  >  詳解python中xlrd套件的安裝與處理Excel表格

詳解python中xlrd套件的安裝與處理Excel表格

高洛峰
高洛峰原創
2017-02-23 16:58:293306瀏覽

一、安裝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__ = &#39;1.0.0&#39;
 biff_text_from_num = {0: &#39;(not BIFF)&#39;, 20: &#39;2.0&#39;, 21: &#39;2.1&#39;, 30: &#39;3&#39;, ...
 empty_cell = empty:&#39;&#39;
 error_text_from_code = {0: &#39;#NULL!&#39;, 7: &#39;#p/0!&#39;, 15: &#39;#VALUE!&#39;, 23: ...
 oBOOL = 3
 oERR = 4
 oNUM = 2
 oREF = -1
 oREL = -2
 oSTRG = 1
 oUNK = 0
 okind_dict = {-2: &#39;oREL&#39;, -1: &#39;oREF&#39;, 0: &#39;oUNK&#39;, 1: &#39;oSTRG&#39;, 2: &#39;oNUM&#39;...

FILE 
 c:\python34\lib\site-packages\xlrd\__init__.py

透過上述方法可以查看xlrd的幫助訊息,裡面有xlrd套件中的一些模組以及一些成員變數、常數、函數。

二、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)

上面的幫助資訊出現了這個函數:open_workbook() ,開啟工作簿,這就開啟了Excel表。

返回的是一個Book對象,透過Book對像我們可以得到一個Sheet的列表,上面的程式就簡單地把每個sheet的名字都輸了出來。

2、讀出指定單元格內的資料

#
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))

讀出單元格內數據函數cell_value(row, col) ,行列均從0起。

除此之外,可以透過:

sheet.cell(row, col) # 获取单元格对象 
sheet.cell_type(row, col) # 获取单元格类型

#3、讀取日期資料

如果Excel儲存的某一個單元格資料是日期的話,需要進行一下處理,轉換為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、遍歷每行的資料

rows = sheet.get_rows() 
for row in rows: 
 print(row[0].value) # 输出此行第一列的数据


在更多詳解python中xlrd套件的安裝與處理Excel表格相關文章請關注PHP中文網!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn