python裡面的xlrd模組詳解

2021-08-30 13:31:15 字數 2938 閱讀 7842

那我就以下幾個問題對xlrd模組進行學習一下:

1.什麼是xlrd模組?                 2.為什麼使用xlrd模組?                  3.怎樣使用xlrd模組?

♦python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。

今天就先來說一下xlrd模組:

一、安裝xlrd模組

♦或者在cmd視窗 

pip install  xlrd
二、使用介紹1、常用單元格中的資料型別(type)

1. empty(空的)

2. string(text)

3. number

4. date

5. boolean

6. error

7. blank(空白**)

2、匯入模組

import xlrd
3、開啟excel檔案讀取資料

data = xlrd.open_workbook(filename)  #若檔名或路徑包含中文並報錯,解決方法見文末
4、常用的函式

excel中最重要的方法就是book和sheet的操作

1)獲取book中乙個工作表

table = data.sheets()[0]   #通過索引順序獲取

table = data.sheet_by_index(sheet_indx)) #通過索引順序獲取

table = data.sheet_by_name(sheet_name) #通過名稱獲取

#以上三個函式都會返回乙個xlrd.sheet.sheet()物件

names = data.sheet_names() #返回book中所有工作表的名字

data.sheet_loaded(sheet_name or indx) # 檢查某個sheet是否匯入完畢

如:

2)行(row)的操作

nrows = table.nrows  #獲取該sheet表中的有效行數

table.row_len(rowx) #返回該行有效的單元格個數,或者說是該行的有效列數

table.row(rowx) #返回由該 行 中所有的單元格物件組成的列表

table.row_slice(rowx, start_colx, end_colx) #返回由該行中第start_colx+1列到第end_colx列的單元格物件組成的列表

table.row_types(rowx, start_colx, end_colx) #返回由該行中第start_colx+1列到第end_colx列的單元格的資料型別組成的列表

table.row_values(rowx, start_colx, end_colx) #返回由該行中第start_colx+1列到第end_colx列的單元格的資料值組成的列表

#以上的start_colx和end_colx皆可省略不填,若省略,預設獲取對應該行的全部資料

3)列(colnum)的操作

ncols = table.ncols   #獲取列表的有效列數

table.col(colx) #返回由該列中所有的單元格物件組成的列表

table.col(colx, start_rowx, end_rowx) #返回由該列中第start_rowx+1行到第end_rowx行的單元格物件組成的列表,不建議這種用法,會產生歧義

table.col_slice(colx, start_rowx, end_rowx) #返回由該列中第start_rowx+1行到第end_rowx行的單元格物件組成的列表

table.col_types(colx, start_rowx, end_rowx) #返回由該列中第start_rowx+1行到第end_rowx行的單元格的資料型別組成的列表

table.col_values(colx, start_rowx, end_rowx) #返回由該列中第start_rowx+1行到第end_rowx行的單元格的資料值組成的列表

4)單元格(cell)的操作  

table.cell(rowx,colx)   #返回第rowx+1行第colx+1列的單元格物件

table.cell_type(rowx,colx) / table.cell(rowx,colx).ctype #返回第rowx+1行第colx+1列的單元格中的資料型別

table.cell_value(rowx,colx) / table.cell(rowx,colx).value #返回第rowx+1行第colx+1列的單元格中的資料值

table.cell_xf_index(rowx, colx) # 不懂用法

問題: python解決open()函式、xlrd.open_workbook()函式檔名包含中文,sheet名包含中文報錯的問題,如下:

#開啟檔案

file = open(filename,'rb')

#開啟excel檔案

workbook = xlrd.open_workbook(filename)

#獲取sheet

sheet = workbook.sheet_by_name(sheetname)

解決方案:對引數進行轉碼即可

filename = filename.decode('utf-8')

python裡面的xlrd模組詳解(一)

那我就一下面積個問題對xlrd模組進行學習一下 1.什麼是xlrd模組?2.為什麼使用xlrd模組?3.怎樣使用xlrd模組?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。今天就先來說一下xlrd模組 一 安裝xlrd模組 或者在...

Python裡面的字典

python 將這種資料型別叫做 dict 有的語言裡它的名稱是 hash 這兩種名字都會用到,不過這並不重要,重要的是它們和列表的區別。你看,針對列表你可以做這樣的事情 things a b c d print things 1 b things 1 z print things 1 z prin...

python裡面的數學

一.基本運算子 1.算數運算 2.比較運算 特殊情況 不等於 新版本不支援 不等號 3.賦值運算 4.邏輯運算 not 非 非真即假,非假即真.and 並且 左右兩端同時為真,結果才為真.or 或者 左右兩端有乙個為真,結果就是真.true 真 1 判斷的結果 false 假 0 判斷的結果 pri...