如何使用python讀取excel(一)

2021-10-10 20:44:02 字數 2141 閱讀 3813

在進行操作前,我們先熟悉一下excel**的基本術語:

這裡我們使用openpyxl讀取資料。

檢視每個工作簿包含的工作表

import openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)# 從工作簿檢視工作表

print

(wb.sheetnames)

也可以通過迴圈的形式開啟工作表

import openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)# 從工作簿檢視工作表

for sheet in wb:

print

(sheet.title)

假如要想增加工作表,可以通過下面的程式實現

import openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)# 增加表單

mysheet = wb.create_sheet(

"保育豬成本"

)mysheet2 = wb.create_sheet(

"育肥豬成本"

)print

(wb.sheetnames)

讀取某個單元格內容

import openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)ws = wb.active

# 讀取表單物件

print

(ws[

'a1'])

# 讀取單元格的內容

print

(ws[

'a1'

].value)

上面的程式未表示出行列座標,如果想表示「第x行x列是x」,使用下面方法

import openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)ws = wb.active

c = ws[

'a1'

]# 讀取單元格的第一種方法

print

('row {} column {} is {}'

.format

(c.row, c.column, c.value)

)# 讀取單元格的第一種方法

print

(ws.cell(row=

1, column=3)

.value)

# 讀取一行多個單元格

for i in

range(1

,8):

print

(ws.cell(row=i, column=3)

.value)

遍歷某行或者某列的內容

通過下面的程式可以讀取工作表中第五列的所有內容

mport openpyxl

wb = openpyxl.load_workbook(

'examble.xlsx'

)ws = wb.get_sheet_by_name(

"原始資料"

)for i in

range(5

, ws.max_row+1)

: name = ws.cell(row=i, column=5)

.value

print

(name)

總結:

[1]

import openyxl[2

] wb = openpyxl.load_wookbook(

"檔名")[

3] ws = wb.active or ws = wb.get_sheet_by_name(sheettitle)[4

] ws =

['a1'

]or ws.cell(row=

3, column=

2)

參考資料

【用python處理excel資料,中文全基礎系列教程】

通過使用openrowset來讀取excel

通過使用openrowset來讀取excel 開啟許可權 exec sp configure show advanced options 1 reconfigure exec sp configure ad hoc distributed queries 1 reconfigure 查詢excel資...

Python實現讀取json檔案到excel表

一 需求 1 score.json 檔案內容 2 讀取json檔案儲存到資料庫,並計算出每個人的總分程式設計客棧和平均分 二 實現 import json,xlwt def read score jsonfile with open jsonfile,encoding utf 8 as f 將jso...

如何使用Python讀取大檔案

最近處理文字文件時 檔案約2gb大小 出現memoryerror錯誤和檔案讀取太慢的問題,後來找到了兩種比較快large file reading 的方法,本文將介紹這兩種讀取方法。原味位址 我們談到 文字處理 時,我們通常是指處理的內容。python 將文字檔案的內容讀入可以操作的字串變數非常容易...