首頁  >  文章  >  後端開發  >  python如何讀寫excel文件

python如何讀寫excel文件

尚
原創
2019-07-03 13:07:4342144瀏覽

python如何讀寫excel文件

python讀寫excel的方式有很多,不同的模組在讀寫的方法上稍有區別:

用xlrd和xlwt進行excel讀寫;

用openpyxl進行excel讀寫;

用pandas進行excel讀寫;

為了方便演示,我這裡新建了一個data.xlsx文件,第一個工作表sheet1區域「A1:F5」的內容如下,用來測試讀取excel的程式碼:

python如何讀寫excel文件

一、利用xlrd和xlwt進行excel讀寫(xlwt不支援xlsx)

首先是安裝第三方模組xlrd和xlwt,直接輸入指令"pip install xlrd"和"pip install xlwt"就行,如下(cmd→CD→c:pythonscripts):

python如何讀寫excel文件

#1、xlrd讀取excel:

import xlrd
book = xlrd.open_workbook('data.xlsx')
sheet1 = book.sheets()[0]
nrows = sheet1.nrows
print('表格总行数',nrows)
ncols = sheet1.ncols
print('表格总列数',ncols)
row3_values = sheet1.row_values(2)
print('第3行值',row3_values)
col3_values = sheet1.col_values(2)
print('第3列值',col3_values)
cell_3_3 = sheet1.cell(2,2).value
print('第3行第3列的单元格的值:',cell_3_3)

運行結果:

表格总行数 5
表格总列数 5
第3行值 ['3A', '3B', '3C', '3D', '3F']
第3列值 ['1C', '2C', '3C', '4C', '5C']
第3行第3列的单元格的值: 3C

2、xlwt寫excel

主要程式碼如下:

workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('test')
worksheet.write(0,0,'A1data')
workbook.save('excelwrite.xls')

程式運行後,新建excelwrite.xls工作簿並插入text工作表,A1的內容為A1data。

二、利用openpyxl讀寫excel,注意這裡只能是xlsx類型的excel

#安裝的話,直接輸入指令"pip install openpyxl"就行,很快就能安裝完畢。

讀Excel:

import openpyxl
workbook = openpyxl.load_workbook('data.xlsx')
worksheet = workbook.get_sheet_by_name('Sheet1')
row3=[item.value for item in list(worksheet.rows)[2]]
print('第3行值',row3)
col3=[item.value for item in list(worksheet.columns)[2]]
print('第3行值',col3)
cell_2_3=worksheet.cell(row=2,column=3).value
print('第2行第3列值',cell_2_3)
max_row=worksheet.max_row
print('最大行',max_row)

執行結果:

第3行值 ['3A', '3B', '3C', '3D', '3F']
第3行值 ['1C', '2C', '3C', '4C', '5C']
第2行第3列值 2C
最大行 5

寫入Excel:

import openpyxl
workbook = openpyxl.Workbook()
sheet=workbook.active
sheet['A1']='hi,wwu'
workbook.save('new.xlsx')

程式執行後,新建new.xls工作簿並插入sheet工作表,A1的內容為hi,wwu。

三、利用pandas讀取excel

Pandas的名稱來自於面板資料(panel data)和python資料分析(data analysis)。

首先要安裝pandas模組,相對來說,安裝pandas模組要複雜一些。

如果用pip install pandas安裝後運行出錯,可以考慮安裝以前的版本:pip install pandas==0.22

pandas是一個資料處理的包,本身提供了許多讀取文件的函數,像read_csv(讀取csv檔案),read_excel(讀取excel檔案)等,只需一行程式碼就能實現檔案的讀取。

讀取Excel:

import pandas as pd
df = pd.read_excel(r'data.xlsx',sheetname=0)
print(df.head())

執行結果:

1A 1B 1C 1D 1F
0 2A 2B 2C 2D 2F
1 3A 3B 3C 3D 3F
2 4A 4B 4C 4D 4F
3 5A 5B 5C 5D 5F

寫入Excel:

from pandas import DataFrame
data={
'name':['张三','李四','王五'],
'age':[11,12,13]
'sex':'男','女','男']
}
df=DataFrame(data)
df.to_excel('new.xlsx")

程式執行後,將新建(或替換)new.xlsx文件,並在工作表sheet1的A1:D4區域中保存內容如下:

python如何讀寫excel文件

更多Python相關技術文章,請訪問Python教學欄位進行學習!

以上是python如何讀寫excel文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn