python的pandas的excel读写_[Python] Pandas 读写 Excel

本文介绍了Python中使用Pandas进行Excel文件的读写操作,重点关注pandas.read_excel()和DataFrame.to_excel()函数的参数用法。通过实例展示了如何读取和写入Excel文件,包括设置列名、跳过行、指定索引列等关键参数。
摘要由CSDN通过智能技术生成

Python 读写 Excel 可以使用 Pandas,处理很方便。但如果要处理 Excel 的格式,还是需要 openpyxl 模块,我个人不喜欢旧的 xlrd 和 xlwt 模块。步入正题。Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 的参数,以便日后使用。

1. pandas.read_excel

pandas.read_excel(io,sheet_name=0,header=0,names=None,index_col=None,usecols=None,squeeze=False,dtype=None,engine=None,converters=None,true_values=None,false_values=None,skiprows=None,nrows=None,na_values=None,keep_default_na=True,verbose=False,parse_dates=False,date_parser=None,thousands=None,comment=None,skip_footer=0,skipfooter=0,convert_float=True,mangle_dupe_cols=True,**kwds)

常用参数:

io:文件路径

io = r’C:\Users\ss\Desktop\ppp.xlsx’

sheetname:表名,

sheetname = None# 读取全部表,得到 OrderDict:key为表名,value为 DataFrame

sheetname = 1 / “Sheet1”# 读取单个表,返回 DataFrame

sheetname = [0, 1] / [“Sheet1”, “Sheet2”] # 读取多表,返回一个OrderDict

header:指定列名行

names:设置列名,必须是list类型,且长度和列数一致

names = [“Name”, “Number”, “Score”]

usecols:使用的行

usecols = range(1, 3) # 使用 [1, 3) 行,不包括第 3 行

usecols = [4, 7]# 使用 4和7 行

skiprows:指定跳过的行数(不读取的行数)

shiprows = 4# 跳过前 4 行,会把首行列名也跳过

skiprows = [1, 2, 4]# 跳过 1,2,4 行

skiprows = range(1, 10)# 跳过 [1,10) 行,不包括第10行,可以留下首行列名

skipfooter:指定省略尾部的行数,必须为整数

skipfooter = 4 # 跳过尾部 4 行

index_col:指定列为索引列,索引从 0 开始

index_col = 1

index_col = “名称”

# 读取多个表

import pandas as pd

order_dict = pd.read_excel(r'C:\Users\sss\Desktop\test.xlsx',header=0, usecols=[2, 3] names=["Name", "Number"], sheet_name=["Sheet1", "Sheet2"], skiprows=range(1, 10), skipfooter=4)

for sheet_name, df in order_dict.items():

print(sheet_name)

print(df)

2. DataFrame.to_excel

DataFrame.to_excel(excel_writer,sheet_name="Sheet1",na_rep="",float_format=None,columns=None,header=True,index=True,index_label=None,startrow=0,startcol=0,engine=None,merge_cells=True,encoding=None,inf_rep="inf",verbose=True,freeze_panes=None)

常用参数:

excel_writer:文件路径,不存在会自动生成

sheet_name=“Sheet1”:指定写的表

columns=None:指定输出某些列

columns = [“Name”, “Number”]

header=True:是否保存头行列名

index=True:是否保存索引列

startcol=0:起始行

merge_cells=True:是否合并单元格

encoding=None:指定编码,常用 utf-8

float_format=None:浮点数保存的格式,默认保存为字符串

float_format=’%.2f’# 保存为浮点数,保留2位小数

engine=None:保存格式,指定io.excel.xlsx.writer、 io.excel.xls.writer、io.excel.xlsm.writer.

# 简单示例

df.to_excel(r'C:\Users\sss\Desktop\test.xlsx', columns=["Name", "Number"], encoding="utf8")

原文链接:https://blog.csdn.net/Spade_/article/details/107703016

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值