国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python使用openpyxl讀寫excel文件的方法

2020-02-16 01:47:07
字體:
供稿:網(wǎng)友

這是一個第三方庫,可以處理xlsx格式的Excel文件。pip install openpyxl安裝。如果使用Aanconda,應(yīng)該自帶了。

讀取Excel文件

需要導(dǎo)入相關(guān)函數(shù)。

from openpyxl import load_workbook# 默認(rèn)可讀寫,若有需要可以指定write_only和read_only為Truewb = load_workbook('mainbuilding33.xlsx')

默認(rèn)打開的文件為可讀寫,若有需要可以指定參數(shù)read_onlyTrue

獲取工作表--Sheet

# 獲得所有sheet的名稱print(wb.get_sheet_names())# 根據(jù)sheet名字獲得sheeta_sheet = wb.get_sheet_by_name('Sheet1')# 獲得sheet名print(a_sheet.title)# 獲得當(dāng)前正在顯示的sheet, 也可以用wb.get_active_sheet()sheet = wb.active 

獲取單元格

# 獲取某個單元格的值,觀察excel發(fā)現(xiàn)也是先字母再數(shù)字的順序,即先列再行b4 = sheet['B4']# 分別返回print(f'({b4.column}, {b4.row}) is {b4.value}') # 返回的數(shù)字就是int型# 除了用下標(biāo)的方式獲得,還可以用cell函數(shù), 換成數(shù)字,這個表示B2b4_too = sheet.cell(row=4, column=2)print(b4_too.value)

b4.column返回B, b4.row返回4, value則是那個單元格的值。另外cell還有一個屬性coordinate, 像b4這個單元格返回的是坐標(biāo)B4

獲得最大行和最大列

# 獲得最大列和最大行print(sheet.max_row)print(sheet.max_column)

獲取行和列

    sheet.rows為生成器, 里面是每一行的數(shù)據(jù),每一行又由一個tuple包裹。 sheet.columns類似,不過里面是每個tuple是每一列的單元格。
# 因為按行,所以返回A1, B1, C1這樣的順序for row in sheet.rows:  for cell in row:    print(cell.value)# A1, A2, A3這樣的順序for column in sheet.columns:  for cell in column:    print(cell.value)

上面的代碼就可以獲得所有單元格的數(shù)據(jù)。如果要獲得某行的數(shù)據(jù)呢?給其一個索引就行了,因為sheet.rows是生成器類型,不能使用索引,轉(zhuǎn)換成list之后再使用索引,list(sheet.rows)[2]這樣就獲取到第二行的tuple對象。

for cell in list(sheet.rows)[2]:  print(cell.value)

如何獲得任意區(qū)間的單元格?

可以使用range函數(shù),下面的寫法,獲得了以A1為左上角,B3為右下角矩形區(qū)域的所有單元格。注意range從1開始的,因為在openpyxl中為了和Excel中的表達(dá)方式一致,并不和編程語言的習(xí)慣以0表示第一個值。

for i in range(1, 4):  for j in range(1, 3):    print(sheet.cell(row=i, column=j))    # out<Cell mainbuilding33.A1><Cell mainbuilding33.B1><Cell mainbuilding33.A2><Cell mainbuilding33.B2><Cell mainbuilding33.A3><Cell mainbuilding33.B3>            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 昂仁县| 托克托县| 南通市| 胶州市| 福海县| 沁阳市| 新田县| 泰兴市| 同江市| 德保县| 榆树市| 沙雅县| 高州市| 丹阳市| 祁连县| 沭阳县| 沅陵县| 石首市| 陆良县| 石林| 江油市| 仙游县| 民勤县| 桐庐县| 阜康市| 福州市| 华亭县| 澄迈县| 红安县| 四会市| 延边| 富蕴县| 钦州市| 凌源市| 安阳县| 区。| 西乌珠穆沁旗| 衡阳市| 南城县| 灵丘县| 新田县|