Python xlrd excel文件操作代碼實(shí)例
打開(kāi)文件
import xlrddata = xlrd.open_workbook(’路徑’)
獲取文件中所有工作表的名稱(chēng)。
data.sheet_names()
相當(dāng)于進(jìn)入文件中的一個(gè)工作表。
table = data.sheet_by_name(’Sheet1’)
查看工作表一共有幾行
rowNum = table.nrows
查看工作表一共有幾列
colNum = table.ncols
查看第一行所有的名稱(chēng)。
farst = table.row_values(0)
查看第一列所有的名稱(chēng)(其中包含合并單元格的)
farst = table.col_values(0)
查看讀取內(nèi)容的格式:(int類(lèi)型)0empty,1string,2number,3date,4boolean,5error
小應(yīng)用:
將文件內(nèi)的內(nèi)容按照對(duì)應(yīng)關(guān)系一一對(duì)應(yīng),并將空的去除,判斷是否有int類(lèi)型,如果有將轉(zhuǎn)換。
#!/usr/bin/env python# _*_ coding:utf-8 _*_# __author__ = ’XinBing’ import xlrddata = xlrd.open_workbook(’D:python交通費(fèi)報(bào)銷(xiāo)單.xlsx’)#打開(kāi)文件# data.sheet_names()# #獲取文件中所有工作表的名稱(chēng)。table = data.sheet_by_name(’Sheet1’)#相當(dāng)于進(jìn)入文件中的一個(gè)工作表。rowNum = table.nrows#查看工作表一共有幾行 10colNum = table.ncols#查看工作表一共有幾列 3farst = table.row_values(0)#查看第一行所有的名稱(chēng)。 #簡(jiǎn)單將文件第一行的數(shù)值和第二行一一對(duì)應(yīng),并添加到字典中,最后添加到列表中。lis = []for i in range(1,rowNum): #第二行開(kāi)始循環(huán)。 dic = {} for i2 in range(colNum): #第一列開(kāi)始。 data = table.cell_value(i,i2) dic[farst[i2]] = data if table.cell(i,i2).ctype != 2 else int(data) # #判斷類(lèi)型是否為數(shù)字類(lèi)型。針對(duì)循環(huán)出來(lái)的行數(shù)和列數(shù)將內(nèi)容打印出來(lái)。 for k,y in dic.items(): # 判斷字典內(nèi)容里有沒(méi)有包含空的元素,如果有就不寫(xiě)入到字典中。默認(rèn)是全部寫(xiě)入 if not y: dic= {} break if dic : lis.append(dic)print(lis) #[{’費(fèi)用名稱(chēng)’: ’火車(chē)票’, ’金額(元)’: 921, ’單據(jù)張數(shù)’: 2}, {’費(fèi)用名稱(chēng)’: ’油票’, ’金額(元)’: 3306, ’單據(jù)張數(shù)’: 13}, {’費(fèi)用名稱(chēng)’: ’合計(jì)’, ’金額(元)’: 4227, ’單據(jù)張數(shù)’: 15}]
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. css代碼優(yōu)化的12個(gè)技巧2. .NET SkiaSharp 生成二維碼驗(yàn)證碼及指定區(qū)域截取方法實(shí)現(xiàn)3. jsp網(wǎng)頁(yè)實(shí)現(xiàn)貪吃蛇小游戲4. CentOS郵件服務(wù)器搭建系列—— POP / IMAP 服務(wù)器的構(gòu)建( Dovecot )5. MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類(lèi)型對(duì)應(yīng)關(guān)系說(shuō)明6. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法7. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼8. ASP中實(shí)現(xiàn)字符部位類(lèi)似.NET里String對(duì)象的PadLeft和PadRight函數(shù)9. ASP中if語(yǔ)句、select 、while循環(huán)的使用方法10. ASP基礎(chǔ)入門(mén)第八篇(ASP內(nèi)建對(duì)象Application和Session)
