本文摘自php中文网,作者尚,侵删。

python读写excel的方式有很多,不同的模块在读写的方法上稍有区别:
用xlrd和xlwt进行excel读写;
用openpyxl进行excel读写;
用pandas进行excel读写;
为了方便演示,我这里新建了一个data.xlsx文件,第一个工作表sheet1区域“A1:F5”的内容如下,用于测试读excel的代码:

一、利用xlrd和xlwt进行excel读写(xlwt不支持xlsx)
首先是安装第三方模块xlrd和xlwt,直接输入命令"pip install xlrd"和"pip install xlwt"就行,如下(cmd→CD→c:pythonscripts):

1、xlrd读excel:
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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)
|
运行结果:
1 2 3 4 5 | 表格总行数 5
表格总列数 5
第3行值 [ '3A' , '3B' , '3C' , '3D' , '3F' ]
第3列值 [ '1C' , '2C' , '3C' , '4C' , '5C' ]
第3行第3列的单元格的值: 3C
|
2、xlwt写excel
主要代码如下:
1 2 3 4 | 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:
1 2 3 4 5 6 7 8 9 10 11 | 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)
|
运行结果:
1 2 3 4 | 第3行值 [ '3A' , '3B' , '3C' , '3D' , '3F' ]
第3行值 [ '1C' , '2C' , '3C' , '4C' , '5C' ]
第2行第3列值 2C
最大行 5
|
写Excel:
1 2 3 4 5 | 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:
1 2 3 | import pandas as pd
df = pd.read_excel(r 'data.xlsx' ,sheetname=0)
print (df.head())
|
运行结果:
1 2 3 4 5 | 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:
1 2 3 4 5 6 7 8 | 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相关技术文章,请访问Python教程栏目进行学习!
以上就是python如何读写excel文件的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
如何实现Python冒泡排序算法?
基于tpc-c基准的Python orm的性能测试详解
为什么Python官网进不去
Python的idle怎么用
Python实现读取字符串按列分配后按行输出
Python 实现在txt指定行追加文本的方法
对Python中yield和generators的深度解析
Python做出新闻聚合项目
Python嵌套字典比较值,取值的实例详解
使用pip安装Python库的几种常用方法
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python如何读写excel文件