濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Python對(duì)Excel進(jìn)行處理的實(shí)操指南

Python對(duì)Excel進(jìn)行處理的實(shí)操指南

熱門標(biāo)簽:云南地圖標(biāo)注 汕頭電商外呼系統(tǒng)供應(yīng)商 賓館能在百度地圖標(biāo)注嗎 400電話 申請(qǐng) 條件 北京外呼電銷機(jī)器人招商 crm電銷機(jī)器人 鄭州智能外呼系統(tǒng)中心 電銷機(jī)器人 金倫通信 南京crm外呼系統(tǒng)排名

xlrd、xlwt和openpyxl模塊的比較:

區(qū)別:

模塊 Excel格式支持
xls xlsx
xlrd
xlwt ×
openpyxl ×

效率:

兩種包對(duì)小文件的讀寫速度差別不大,而面對(duì)較大文件,xlrd/xlwt速度明顯優(yōu)于openpyxl,但因?yàn)閤lwt無(wú)法生成xlsx是個(gè)硬傷,所以想要盡量提高效率又不影響結(jié)果時(shí),可以考慮用xlrd讀取,用openpyxl寫入。

一、xlrd:對(duì)xls、xlsx文件進(jìn)行讀操作

1.獲取工作簿對(duì)象:xlrd.open_workbook()

workBook = xlrd.open_workbook(filemname):打開(kāi)Excel文件讀取數(shù)據(jù)

注:filemname為文件名以及路徑,如果路徑或者文件名有中文給前面加一個(gè)r表示原生字符。

import xlrd
filename=r'D:\記錄表.xls'
workBook=xlrd.open_workbook(filename)

2.獲取工作表(sheet)對(duì)象

1)獲取所有sheet頁(yè)的名字,返回一個(gè)列表

workBook.sheet_names()

2)根據(jù)sheet頁(yè)的名字獲取指定表名的表,返回的是一個(gè)對(duì)象

sheetName = workBook.sheet_by_name(‘sheet1')

3)根據(jù)sheet索引獲取對(duì)應(yīng)sheet表(索引是從0開(kāi)始的),返回的是一個(gè)對(duì)象

sheetName = workbook.sheet_by_index(0)

3.獲取sheet的名稱:name

sheetName.name

4.獲取行數(shù)和列數(shù):nrows、ncols

1)獲取表格的總行數(shù)

sheetName.nrows

2)獲取表格的總列數(shù)

sheetName.ncols

5.獲取整行或整列的值(數(shù)組):row_values、col_values

rows = sheetName.row_values(0) # 獲取第一行內(nèi)容,返回一個(gè)列表
cols = sheetName.col_values(0) # 獲取第一列內(nèi)容,返回一個(gè)列表


6.獲取指定單元格的值:cell(a,b).value、row(1)[0].value

sheetName.cell(1,0).value # 獲取第2行第一列的單元格數(shù)據(jù)
sheetName.row(1)[0].value # 獲取第2行第一列的單元格數(shù)據(jù)

7.獲取單元格內(nèi)容的數(shù)據(jù)類型:ctype

sheetName.cell(1,0).ctype

注:返回為代表數(shù)據(jù)類型的值,編碼分別代表:ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error 

二、xlwt:對(duì)xls文件進(jìn)行寫操作

1.新建工作簿:xlwt.Workbook()

workBook = xlwt.Workbook()

2.在工作簿中新建sheet頁(yè):add_sheet()

table = workBook .add_sheet(‘Over',cell_overwrite_ok=True) # 如果對(duì)同一單元格重復(fù)操作會(huì)發(fā)生overwrite Exception,cell_overwrite_ok為可覆蓋
sheet = workBook .add_sheet(sheet_name) # 新增sheet表
import xlwt
wb=xlwt.Workbook(encoding='utf-8') # 創(chuàng)建一個(gè)工作薄
sheet=wb.add_sheet('文件閱讀記錄信息表') # 創(chuàng)建一個(gè)工作表

3.向表格中寫入數(shù)據(jù):write(i,j,value)

sheet.write(i,j,value) # 向單元格(i,j)寫入數(shù)據(jù)value

4.保存工作簿:save()

workBook.save(path)

三、openpyxl:

1、對(duì)xlsx文件進(jìn)行寫操作

1).新建工作簿:openpyxl.Workbook()

workBook = openpyxl.Workbook() # 新建工作簿

2).在工作簿中新建sheet頁(yè):create_sheet()

sheet = workBook .create_sheet(sheet_name) # 新增sheet表:sheet_name

3).向表格中寫入數(shù)據(jù):cell(i,j,value) --索引從1計(jì)數(shù)

sheet= workBook .active # 獲得當(dāng)前活躍的工作頁(yè),默認(rèn)為第一個(gè)工作頁(yè)
sheet.cell(i,j,value) # 向單元格(i,j)第i行第j列寫入數(shù)據(jù)value

注意:行號(hào)和列號(hào)都從1開(kāi)始計(jì)數(shù),即(1,1)為第一行第一列

4).保存工作簿:save()

workBook .save(path)

2、openpyxl:對(duì)xlsx文件進(jìn)行讀操作

1).獲取工作簿對(duì)象:openpyxl.load_workbook()

workBook = openpyxl.load_workbook(filemname) # 讀取xlsx文件

注:filemname為文件名以及路徑,如果路徑或者文件名有中文給前面加一個(gè)r表示原生字符。

2).獲取工作表(sheet)對(duì)象

workBook.get_sheet_names() # 獲取所有sheet頁(yè)的名字(所有工作表名)
sheetName = workBook.get_sheet_by_name(‘sheet1') # 根據(jù)sheet頁(yè)的名字獲取指定表名的表
sheetName = workBook.worksheets[0] # 根據(jù)sheet索引獲取對(duì)應(yīng)sheet表

3).獲取sheet的名稱:title

sheetName.title # 獲取sheet的名稱

4).獲取行數(shù)和列數(shù):max_row、max_column

sheetName.max_row # 獲取表格的總行數(shù)
sheetName.max_column # 獲取表格的總列數(shù)

5).獲取整行或整列的值(數(shù)組):rows[i]、columns[i]

rows = sheetName.rows # 獲取每一行內(nèi)容,這是一個(gè)生成器,里面是每一行數(shù)據(jù),每一行數(shù)據(jù)由一個(gè)元組類型包裹
cols = sheetName.columns # 獲取每一列內(nèi)容,同上
sheetName.rows[0] # 獲取第一行內(nèi)容–索引從0計(jì)數(shù)
sheetName.columns[0] # 獲取第一列內(nèi)容–索引從0計(jì)數(shù)

6).獲取指定單元格的值:cell(a,b).value–索引從1計(jì)數(shù)

sheetName[‘A1'].value # 獲取第1行第一(A)列的單元格數(shù)據(jù)
sheetName.cell(1,1).value # 獲取第1行第一列的單元格數(shù)據(jù)

注:此處的行數(shù)和列數(shù)都是從1開(kāi)始計(jì)數(shù)的,而在xlrd中是由0開(kāi)始計(jì)數(shù)的

總結(jié)

到此這篇關(guān)于Python對(duì)Excel進(jìn)行處理的文章就介紹到這了,更多相關(guān)Python對(duì)Excel處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python高手之路python處理excel文件(方法匯總)
  • 用python + openpyxl處理excel2007文檔思路以及心得
  • 詳解python中xlrd包的安裝與處理Excel表格
  • Python Excel處理庫(kù)openpyxl使用詳解
  • 零基礎(chǔ)使用Python讀寫處理Excel表格的方法
  • 使用Python處理Excel表格的簡(jiǎn)單方法
  • Python利用pandas處理Excel數(shù)據(jù)的應(yīng)用詳解
  • Python對(duì)CSV、Excel、txt、dat文件的處理
  • Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù)
  • Python處理Excel文件實(shí)例代碼

標(biāo)簽:昆明 石家莊 浙江 梅州 錫林郭勒盟 文山 西寧 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python對(duì)Excel進(jìn)行處理的實(shí)操指南》,本文關(guān)鍵詞  Python,對(duì),Excel,進(jìn)行,處理,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python對(duì)Excel進(jìn)行處理的實(shí)操指南》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Python對(duì)Excel進(jìn)行處理的實(shí)操指南的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    西乌珠穆沁旗| 峨眉山市| 望江县| 响水县| 北碚区| 阳曲县| 廊坊市| 泸定县| 游戏| 收藏| 泌阳县| 许昌县| 手机| 开江县| 沙河市| 商丘市| 石门县| 阿城市| 武城县| 麦盖提县| 潼关县| 松阳县| 义乌市| 互助| 巧家县| 台州市| 台中县| 什邡市| 河北区| 塔城市| 阿鲁科尔沁旗| 云梦县| 台湾省| 永善县| 富蕴县| 寻乌县| 福泉市| 南陵县| 筠连县| 天台县| 扎赉特旗|