久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

python操作讀取excel表格

 今天George 2018-07-10

python讀excel——xlrd

一、安裝xlrd模塊

py -3 -m pipinstall xlrd 或者python –mpip install xlrd,,如下圖:

python操作讀取excel表格

二,、實際操作:

整體思路為à打開文件,,選定表格,讀取行列內(nèi)容,,讀取表格內(nèi)數(shù)據(jù),;

以下圖為例:

python操作讀取excel表格

1.打開文件:

data=xlrd.open_workbook(r'E:\pythonTester\info.xlsx')

2.選定表格:

#print (data.sheet_names()) 若有多個工作表,可通過此代碼打印所有表格的名稱

sheet1=data.sheet_by_index(0) #索引讀取

sheet2=data.sheet_by_name('年級') #姓名讀取

sheets=data.sheets()[0] #函數(shù)讀取

3.統(tǒng)計表中的行數(shù),、列數(shù):

rows=sheet1.nrows

cols=sheet1.ncols

4.打印表格中整行整列的內(nèi)容

print (sheet1.row_values(0)) #打印第一行的內(nèi)容

print (sheet1.col_values(1)) #打印第二列的內(nèi)容

5.讀取表格內(nèi)的數(shù)據(jù)

#按單元格讀取

print (sheet1.cell(0,1).value) à第1行第2列中的內(nèi)容

print (sheet1.cell_value(0,1))

#按列讀取

print (sheet1.col_value(1)[0]) à第2列第1行的內(nèi)容

#按行讀取

print (sheet1.row_value(1)[0]) à第2行第1列的內(nèi)容

python操作讀取excel表格

存在兩個問題:上面的運行結(jié)果中紅框框中的字段明明是出生日期,,可顯示的確實浮點數(shù);同時合并單元格里面應(yīng)該是有內(nèi)容的,,結(jié)果不能為空,。

三、解決問題

1.python讀取excel中單元格內(nèi)容為日期的方式

python讀取excel中單元格的內(nèi)容返回的有5種類型,,即上面例子中的ctype:

ctype : 0 empty,,1 string,2 number,, 3 date,,4 boolean,5 error

即date的ctype=3,,這時需要使用xlrd的xldate_as_tuple來處理為date格式,,先判斷表格的ctype=3時xldate才能開始操作。

import xlrd

from datetime import date,datetime

print (sheet1.cell(1,2).ctype)

data_value=xlrd.xldate_as_tuple(sheet1.cell(1,2).value,data.datemode)

print (data_value)

print (date(*data_value[:3]))

print ((date(*data_value[:3])).strftime('%Y%m%d'))

python操作讀取excel表格

2.獲取合并單元格的內(nèi)容

在操作之前,,先介紹一下merged_cells()用法,,merged_cells返回的這四個參數(shù)的含義是:(row,row_range,col,col_range),其中[row,row_range)包括row,不包括row_range,col也是一樣,即(1, 3,4, 5)的含義是:第1到2行(不包括3)合并,,(7, 8, 2, 5)的含義是:第2到4列合并,。

print (sheet1.merged_cells)

print (sheet1.cell_value(6,1))

print (sheet1.cell_value(4,3))

運行結(jié)果如下:

python操作讀取excel表格

從上面可以發(fā)現(xiàn),獲取merged_cells返回的row和col低位的索引即可,!然后可以批量獲取,,詳細代碼如下:

merge=[]

for (rlow,rhigh,clow,chigh) in sheet1.merged_cells:

merge.append([rlow,clow])

此時merge為[[6, 1], [4, 3]]

for index in merge:

#print (index[0],index[1]) #6 1;4 3

print (sheet1.cell_value(index[0],index[1]))

運行結(jié)果如下

python操作讀取excel表格

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多