Python进阶(九) -- 操作excel文件

这篇具有很好参考价值的文章主要介绍了Python进阶(九) -- 操作excel文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用Python读写Excel文件

Excel简介

Excel是Microsoft(微软)为使用Windows和macOS操作系统开发的一款电子表格软件。Excel凭借其直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,一直以来都是最为流行的个人计算机数据处理软件。当然,Excel也有很多竞品,例如Google Sheets、LibreOffice Calc、Numbers等,这些竞品基本上也能够兼容Excel,至少能够读写较新版本的Excel文件,当然这些不是我们讨论的重点。掌握用Python程序操作Excel文件,可以让日常办公自动化的工作更加轻松愉快,而且在很多商业项目中,导入导出Excel文件都是特别常见的功能。

Python操作Excel需要三方库的支持,如果要兼容Excel 2007以前的版本,也就是xls格式的Excel文件,可以使用三方库xlrdxlwt,前者用于读Excel文件,后者用于写Excel文件。如果使用较新版本的Excel,即操作xlsx格式的Excel文件,可以使用openpyxl库,当然这个库不仅仅可以操作Excel,还可以操作其他基于Office Open XML的电子表格文件。

基于xlwtxlrd操作Excel文件,大家可以先使用下面的命令安装这两个三方库以及配合使用的工具模块xlutils

pip install xlwt xlrd xlutils

读Excel文件

例如在当前文件夹下有一个名为“阿里巴巴2020年股票数据.xls”的Excel文件,如果想读取并显示该文件的内容,可以通过如下所示的代码来完成。

import xlrd

# 使用xlrd模块的open_workbook函数打开指定Excel文件并获得Book对象(工作簿)
wb = xlrd.open_workbook('阿里巴巴2020年股票数据.xls')
# 通过Book对象的sheet_names方法可以获取所有表单名称
sheetnames = wb.sheet_names()
print(sheetnames)
# 通过指定的表单名称获取Sheet对象(工作表)
sheet = wb.sheet_by_name(sheetnames[0])
# 通过Sheet对象的nrows和ncols属性获取表单的行数和列数
print(sheet.nrows, sheet.ncols)
for row in range(sheet.nrows):
    for col in range(sheet.ncols):
        # 通过Sheet对象的cell方法获取指定Cell对象(单元格)
        # 通过Cell对象的value属性获取单元格中的值
        value = sheet.cell(row, col).value
        # 对除首行外的其他行进行数据格式化处理
        if row > 0:
            # 第1列的xldate类型先转成元组再格式化为“年月日”的格式
            if col == 0:
                # xldate_as_tuple函数的第二个参数只有0和1两个取值
                # 其中0代表以1900-01-01为基准的日期,1代表以1904-01-01为基准的日期
                value = xlrd.xldate_as_tuple(value, 0)
                value = f'{value[0]}年{value[1]:>02d}月{value[2]:>02d}日'
            # 其他列的number类型处理成小数点后保留两位有效数字的浮点数
            else:
                value = f'{value:.2f}'
        print(value, end='\t')
    print()
# 获取最后一个单元格的数据类型
# 0 - 空值,1 - 字符串,2 - 数字,3 - 日期,4 - 布尔,5 - 错误
last_cell_type = sheet.cell_type(sheet.nrows - 1, sheet.ncols - 1)
print(last_cell_type)
# 获取第一行的值(列表)
print(sheet.row_values(0))
# 获取指定行指定列范围的数据(列表)
# 第一个参数代表行索引,第二个和第三个参数代表列的开始(含)和结束(不含)索引
print(sheet.row_slice(3, 0, 5))

提示:上面代码中使用的Excel文件“阿里巴巴2020年股票数据.xls”可以通过后面的百度云盘地址进行获取。链接:https://pan.baidu.com/s/1rQujl5RQn9R7PadB2Z5g_g 提取码:e7b4。

相信通过上面的代码,大家已经了解到了如何读取一个Excel文件,如果想知道更多关于xlrd模块的知识,可以阅读它的官方文档。

写Excel文件

写入Excel文件可以通过xlwt 模块的Workbook类创建工作簿对象,通过工作簿对象的add_sheet方法可以添加工作表,通过工作表对象的write方法可以向指定单元格中写入数据,最后通过工作簿对象的save方法将工作簿写入到指定的文件或内存中。下面的代码实现了将5个学生3门课程的考试成绩写入Excel文件的操作。文章来源地址https://www.toymoban.com/news/detail-451435.html

import random

import xlwt

student_names = ['关羽', '张飞', 

到了这里,关于Python进阶(九) -- 操作excel文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Python读写EXCEL文件常用方法

    Python读写EXCEL文件常用方法

    python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式。 用xlrd和xlwt进行excel读写; 用openpyxl进行excel读写; 用pandas进行excel读写; 为了方便演示,我这里新建了一个data.xls和data.xlsx文件,第一个工作表sheet1区域“A1:E5”的内容如下

    2024年02月11日
    浏览(12)
  • python之批量读写excel文件

    python之批量读写excel文件

    首先,导入openpyxl库中的读取和新建文件包(比较官方的名称我没有查,就按照好理解的方向这样说),文中关于行和列的理解都是个人想法,可能有和读者不同之处。 先详细说怎么样读取单个excel文件,批量在后边写。 excel表格格式如下,需要弄清楚的就是excel文件路径,以

    2024年02月02日
    浏览(8)
  • Python读写EXCEL文件常用方法大全

    Python读写EXCEL文件常用方法大全

    python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式。 用xlrd和xlwt进行excel读写; 用openpyxl进行excel读写; 用pandas进行excel读写; 为了方便演示,我这里新建了一个data.xls和data.xlsx文件,第一个工作表sheet1区域“A1:E5”的内容如下

    2024年01月19日
    浏览(14)
  • Python使用openpyxl读写excel文件

    Python使用openpyxl读写excel文件

    需求:读入sample.xlsx中的信息,通过分析其中的身份证号信息,得到每个人的出生日期,性别,年龄,所在省份,星座,属相等等,将结果写入到另一个excel文件中。 首先,要使用openpyxl第三方库需要安装,安装方法如下: 程序一开头为了能使用第三方库,需要先导入 读入

    2024年02月09日
    浏览(12)
  • Python 读写 Excel 文件库推荐和使用教程

    Python 读写 Excel 文件的库总体看还是很多的, 各有其优缺点, 以下用一图总结各库的优缺点, 同时对整体友好的库重点介绍其使用教程。 库名称 .xls .xlsx 读取 写入 修改 保存 格式调整 插入图片 xlrd √ √ √ × × × × × xlwt √ × × √ √ √ √ √ xlutils √ × × √ √ √ × ×

    2024年02月11日
    浏览(15)
  • Python 实现txt、excel、csv文件读写【附源码】

    Python 实现txt、excel、csv文件读写【附源码】

    前言 一、txt文件读写 二、excel文件读写 总结 本文介绍使用Python进行文件读写操作,包括txt文件、excel文件(xlsx、xls、csv) 编译器使用的是PyCharm read()                  # 一次性读取全部内容 readline()            # 读取第一行内容 readlines()          # 读取文本全部内

    2024年02月01日
    浏览(45)
  • 90天玩转Python—11—基础知识篇:Python自动化操作Excel:读写、增删改查、分组统计全攻略

    90天玩转Python—01—基础知识篇:C站最全Python标准库总结 90天玩转Python--02--基础知识篇:初识Python与PyCharm 90天玩转Python—03—基础知识篇:Python和PyCharm(语言特点、学习方法、工具安装) 90天玩转Python—04—基础知识篇:Python编程基础:标识符、保留字、注释、多行语句、p

    2024年04月11日
    浏览(12)
  • 100天精通Python丨办公效率篇 —— 07、Python自动化操作 office-excel(读写、增删改查、分组统计)
  • 100天精通Python丨办公效率篇 —— 10、Python自动化操作 office-excel(读写、增删改查、分组统计)
  • Excel文件解析以及超大Excel文件读写

    Excel文件解析以及超大Excel文件读写

             在应用程序的开发过程中,经常需要使用Excel 文件来进行数据的导入或导出。所以,在通过ava语言实现此类需求的时候,往往会面临着Excel文件的解析(导入)或生成(导出)。         在Java技术生态圈中,可以进行Excel文件处理的主流技术包括: Apache POI 、JXL 、Alibaba

    2024年02月07日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包