濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > python中xlrd模塊的使用詳解

python中xlrd模塊的使用詳解

熱門標(biāo)簽:杭州房產(chǎn)地圖標(biāo)注 地圖標(biāo)注可以遠(yuǎn)程操作嗎 天津塘沽區(qū)地圖標(biāo)注 如何申請(qǐng)400電話代理 江門智能電話機(jī)器人 滴滴地圖標(biāo)注公司 400電話在線如何申請(qǐng) 智能電話機(jī)器人調(diào)研 甘肅高頻外呼系統(tǒng)

一、xlrd的安裝

打開cmd輸入pip install xlrd安裝完成即可

二、xlrd模塊的使用

下面以這個(gè)工作簿為例

1、導(dǎo)入模塊

import xlrd

2、打開工作薄

# filename是文件的路徑名稱
workbook = xlrd.open_workbook(filename=r'C:\Users\Windows10\Desktop\xlsx文件.xlsx')

3、獲取需要操作的sheet表格(有三種方法)

①通過索引獲取

# 獲取第一個(gè)sheet表格
table = workbook.sheets()[0]

②通過索引順序獲取

# 通過索引順序獲取
table = workbook.sheet_by_index(0)

③通過sheet名稱獲取

# 通過sheet名稱獲取
table = workbook.sheet_by_name(sheet_name='Sheet1')

補(bǔ)充:獲取工作薄中所有sheet名稱

# 獲取工作薄中所有的sheet名稱
names = workbook.sheet_names()

打印結(jié)果
['Sheet1', 'Sheet2', 'Sheet3']

三、行和列的操作

常用1:獲取sheet中有多少行和多少列

# 獲取sheet中有效行數(shù)
row = table.nrows
print(row)
打印結(jié)果6
# 獲取sheet中有效列數(shù)
col = table.ncols
print(col)

打印結(jié)果
4

常用2:獲取一行中有多少列數(shù)據(jù)

# 返回該行的有效單元格長度
num = table.row_len(0)
print(num)

打印結(jié)果
4

常用3:獲取指定行或者列中所有的數(shù)據(jù)

# rowx表示是獲取第幾行的數(shù)據(jù)
# start_col表示從索引為多少開始,end_colx表示從索引為多少結(jié)束,
# end_colx為None表示結(jié)束沒有限制
# 獲取指定行中的數(shù)據(jù)并以列表的形式返回
table_list = table.row_values(rowx=0, start_colx=0, end_colx=None)
print(table_list)

打印結(jié)果
['渡劫(送千萬元寶)', '新手禮包', '主角技能書*20,三級(jí)攻擊石*2,萌新相框*1', 'nesHtg6Y']
# colx表示是獲取第幾列的數(shù)據(jù)
# start_rowx表示從索引為多少開始,end_rowx表示從索引為多少結(jié)束,
# end_rowx為None表示結(jié)束沒有限制
# 獲取指定列中的數(shù)據(jù)并以列表的形式返回
table_list = table.col_values(colx=0, start_rowx=0, end_rowx=None)
print(table_list)

打印結(jié)果
['渡劫(送千萬元寶)', '渡劫(送千萬元寶)', '渡劫(送千萬元寶)', '渡劫(送千萬元寶)', '名揚(yáng)沙城-殺豬爆充值', '名揚(yáng)沙城-殺豬爆充值']

補(bǔ)充:了解即可

#返回由該列中所有的單元格對(duì)象組成的列表
print(table.row(0)) 
#返回由該行中所有的單元格對(duì)象組成的列表
print(table.row_slice(0)) 
#返回由該行中所有單元格的數(shù)據(jù)類型組成的列表
print(table.row_types(0, start_colx=0, end_colx=None)) 

打印結(jié)果
[text:'渡劫(送千萬元寶)', text:'新手禮包', text:'主角技能書*20,三級(jí)攻擊石*2,萌新相框*1', text:'nesHtg6Y']
[text:'渡劫(送千萬元寶)', text:'新手禮包', text:'主角技能書*20,三級(jí)攻擊石*2,萌新相框*1', text:'nesHtg6Y']
array('B', [1, 1, 1, 1])
 #返回由該列中所有的單元格對(duì)象組成的列表
print(table.col(0, start_rowx=0, end_rowx=None)) 
#返回由該列中所有的單元格對(duì)象組成的列表
print(table.col_slice(0, start_rowx=0, end_rowx=None)) 
#返回由該列中所有單元格的數(shù)據(jù)類型組成的列表
print(table.col_types(0, start_rowx=0, end_rowx=None)) 

打印結(jié)果
[text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'名揚(yáng)沙城-殺豬爆充值', text:'名揚(yáng)沙城-殺豬爆充值']
[text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'渡劫(送千萬元寶)', text:'名揚(yáng)沙城-殺豬爆充值', text:'名揚(yáng)沙城-殺豬爆充值']
[1, 1, 1, 1, 1, 1]

四、單元格的操作

1、獲取單元中的值

# 獲取指定單元格內(nèi)的值
value = table.cell_value(rowx=0, colx=1)
print(value)

打印結(jié)果
新手禮包

2、獲取單元格內(nèi)的組成對(duì)象和數(shù)據(jù)

value = table.cell(rowx=0, colx=1)
print(value)

打印結(jié)果
text:'新手禮包'

3、獲取單元格的數(shù)據(jù)類型

python讀取excel中單元格的內(nèi)容返回的有5種類型。ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error。即date的ctype=3,這時(shí)需要使用xlrd的xldate_as_tuple來處理為date格式,先判斷表格的ctype=3時(shí)xldate才能開始操作。

value = table.cell_type(rowx=0, colx=1)
print(value)

五、案例

需求:獲取上面表格中的數(shù)據(jù)并依次打印出來

import xlrd

# 打開工作薄
workbook = xlrd.open_workbook(r'C:\Users\Windows10\Desktop\xlsx文件.xlsx')
# 獲取第一個(gè)sheet表格
table = workbook.sheets()[0]
# 獲取行數(shù)
rows = table.nrows
# 獲取列數(shù)
cols = table.ncols
# 循環(huán)獲取每行的數(shù)據(jù)
for row in range(rows):
 for col in range(cols):
  value = table.cell_value(row, col)
  print('第{}行{}列的數(shù)據(jù)為:{}'.format(row, col, value))

打印結(jié)果
第0行0列的數(shù)據(jù)為:渡劫(送千萬元寶)
第0行1列的數(shù)據(jù)為:新手禮包
第0行2列的數(shù)據(jù)為:主角技能書*20,三級(jí)攻擊石*2,萌新相框*1
第0行3列的數(shù)據(jù)為:nesHtg6Y
第1行0列的數(shù)據(jù)為:渡劫(送千萬元寶)
第1行1列的數(shù)據(jù)為:特權(quán)禮包
第1行2列的數(shù)據(jù)為:翅膀進(jìn)階丹*20,翅膀技能書*10,萌新氣泡*1
第1行3列的數(shù)據(jù)為:QqBSc7VJ
第2行0列的數(shù)據(jù)為:渡劫(送千萬元寶)
第2行1列的數(shù)據(jù)為:獨(dú)家禮包
第2行2列的數(shù)據(jù)為:高級(jí)生命精華*10,升星石*20,法寶靈紋石*10
第2行3列的數(shù)據(jù)為:NqsEdtBt
第3行0列的數(shù)據(jù)為:渡劫(送千萬元寶)
第3行1列的數(shù)據(jù)為:預(yù)約禮包
第3行2列的數(shù)據(jù)為:高級(jí)攻擊精華*10,生命神兵印記包*5,老司機(jī)氣泡*1
第3行3列的數(shù)據(jù)為:P22vY6wa
第4行0列的數(shù)據(jù)為:名揚(yáng)沙城-殺豬爆充值
第4行1列的數(shù)據(jù)為:萬元青龍
第4行2列的數(shù)據(jù)為:凌霄青龍*1
第4行3列的數(shù)據(jù)為:NB999
第5行0列的數(shù)據(jù)為:名揚(yáng)沙城-殺豬爆充值
第5行1列的數(shù)據(jù)為:尊貴VIP11
第5行2列的數(shù)據(jù)為:5元*2、神羽*20、斗笠石(中)*20
第5行3列的數(shù)據(jù)為:VIP999

到此這篇關(guān)于python中xlrd模塊的使用詳解的文章就介紹到這了,更多相關(guān)python xlrd模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python中的xlrd模塊使用原理解析
  • python使用xlrd模塊讀取xlsx文件中的ip方法
  • Python使用xlrd模塊操作Excel數(shù)據(jù)導(dǎo)入的方法
  • python使用xlrd模塊讀寫Excel文件的方法
  • Python中的xlrd模塊使用整理

標(biāo)簽:東莞 臨汾 廊坊 漢中 長春 重慶 河池 德宏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python中xlrd模塊的使用詳解》,本文關(guān)鍵詞  python,中,xlrd,模塊,的,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python中xlrd模塊的使用詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于python中xlrd模塊的使用詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    永安市| 怀安县| 平利县| 大宁县| 潞城市| 五寨县| 太原市| 巩义市| 镇赉县| 白朗县| 洪江市| 皋兰县| 甘南县| 会理县| 明光市| 屯昌县| 山阳县| 甘泉县| 廉江市| 南华县| 星座| 黄浦区| 霍山县| 铅山县| 台前县| 即墨市| 鄂伦春自治旗| 沅陵县| 穆棱市| 抚顺市| 高邑县| 蓝田县| 平邑县| 苏尼特右旗| 安顺市| 额尔古纳市| 岳普湖县| 怀宁县| 安远县| 六枝特区| 正镶白旗|