Python 读写 Excel 可以使用 Pandas,处理很方便。但如果要处理 Excel 的格式,还是需要 openpyxl 模块,旧的 xlrd 和 xlwt 模块可能支持不够丰富。Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 的参数。

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’test.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'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)

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.writerio.excel.xlsm.writer.

# 简单示例
df.to_excel(r'test.xlsx', columns=["Name", "Number"], encoding="utf8")

pandas read_excel 和 to_excel 读写Excel的参数详解相关推荐

  1. python pandas read_csv 迭代器使用方法_pandas.read_csv参数详解(小结)

    更多python教程请到友情连接: 菜鸟教程www.piaodoo.com 人人影视www.sfkyty.com 飞卢小说网www.591319.com 韩剧网www.op-kg.com 兴化论坛ww ...

  2. pandas系列 read_csv 与 to_csv 方法各参数详解(全,中文版)

    * 由于在做数据处理,数据分析的时候,免不了读取数据或者将数据转换为相应的处理形式,那么,pandas的read_csv和to_csv,就能给我们很大的帮助,接下来,博主,将 read_csv 和 t ...

  3. Pandas读取和将数据存储到多个sheet的excel以及read_excel函数常用参数详解

    Pandas读取和将数据存储到多个sheet的excel以及read_excel函数常用参数详解 Excel数据显示: read_excel函数常用参数详解 1.io 读取路径 个人比较喜欢第一种(r ...

  4. Python之pandas:pandas中to_csv()、read_csv()函数的index、index_col(不将索引列写入)参数详解之详细攻略

    Python之pandas:pandas中to_csv().read_csv()函数的index.index_col(不将索引列写入)参数详解之详细攻略 目录 pandas中to_csv().read ...

  5. python把数据写入excel_Python读写sqlite3数据库的方法并且将数据写入Excel的实例详解...

    这篇文章主要介绍了Python实现读写sqlite3数据库并将统计数据写入Excel的方法,涉及Python针对sqlite3数据库的读取及Excel文件相关操作技巧,需要的朋友可以参考下 本文实例讲 ...

  6. pandas to_csv参数详解_【Python基础】Pandas数据可视化原来也这么厉害

    一.可视化概述 在Python中,常见的数据可视化库有3个: matplotlib:最常用的库,可以算作可视化的必备技能库,比较底层,api多,学起来不太容易. seaborn:是建构于matplot ...

  7. pandas中dropna()参数详解

    pandas中dropna()参数详解 DataFrame.dropna( axis=0, how='any', thresh=None, subset=None, inplace=False) 1. ...

  8. pandas中的read_csv参数详解

    1.官网语法 pandas.read_csv(filepath_or_buffer, sep=NoDefault.no_default**,** delimiter=None**,** header= ...

  9. [Python从零到壹] 十一.数据分析之Numpy、Pandas、Matplotlib和Sklearn入门知识万字详解(1)

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

最新文章

  1. 使用Jsonp实现跨域请求
  2. ElasticSearch搜索实例含高亮显示及搜索的特殊字符过滤
  3. idea(三)最值得安装的几款插件
  4. 我拿模型当朋友,模型却想泄漏我的隐私?
  5. CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器
  6. 国外资源下载速度太慢怎么办
  7. Flutter基础—布局模型之层叠定位
  8. 湘教云实名服务平台怎样认证_【i通知】小贝喊你来校园一卡通微信支付实名认证!...
  9. Linux性能调优集合
  10. 409.最长回文串(力扣leetcode) 博主可答疑该问题
  11. 2013年最新黑马程序员全套视频-.net视频40G免费下
  12. u9系统的使用方法仓库_用友U9--INV库存管理手册.pdf
  13. java采用降低图片分辨率大小来压缩图片大小
  14. matlab单目相机标定
  15. python学习笔记(二十九)网络通信之模仿qq的在线聊天工具
  16. C#编写上位机连接华为云平台IoTDA
  17. “过气网红”准备复出? 诺基亚新机或将接入鸿蒙系统
  18. 实习笔记Day11(2022.8.19)
  19. Spring整合AMQ
  20. 高等数学(一) 微积分研究的主要对象

热门文章

  1. 「数字货币监管」听证会重磅来袭,无形之笼悄然降临?
  2. 一支口红用了5年_一支口红多久该扔掉?保质期过了还能用吗?
  3. 如何解决Sketch导出文件出现色差偏暗或偏淡这个问题?
  4. 机器学习提高准确率的一些思路和技巧
  5. 轮播图(火车轮播图)案例
  6. 美团、饿了么“喜极而泣”,搞定了!外卖骑手终于可以愉快的送餐了
  7. 无线网经常短连接服务器,我家的无线网不稳定,经常掉线,每次玩游戏到加载的时候,总会出现:”无法连接服务器,请检查您的网络“...
  8. Excel同时检测两列的重复值的方法
  9. 原来发朋友圈还有这讲究,难怪我的朋友圈没人看
  10. linux中shell的小括号、大括号的用法区别