python如何操作excel,在excel中读取和写入数据

这篇具有很好参考价值的文章主要介绍了python如何操作excel,在excel中读取和写入数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ExcelMicrosoft为使用WindowsApple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。在1993年,作为Microsoft Office的组件发布了5.0版之后,Excel就开始成为所适用操作平台上的电子制表软件的霸主。

python对xlsx写入单元格,python,excel,开发语言

1、介绍


excel本身是有很多功能的,比如说格式调试,图表展示,公式计算等内容,但是对于我们在python爬虫中,我们关注的仅仅是纯数据,其他的格式内容,咱们暂时不提。

我们使用python操作excel的时候,我们要使用两个模块,分别是xlrdxlwt,下面我们就分别使用python下的pip命令来安装下这两个模块。

2、安装

pip install xlrd=1.2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple   
pip install xlwt -i https://pypi.tuna.tsinghua.edu.cn/simple   

3、python读取excel表格

3.1 创建测试文件

首先我们先创建一个名字为ceshi.xlsx的测试文件,以供我们使用,文件如下:

python对xlsx写入单元格,python,excel,开发语言

3.2 读取excel中所有sheet的信息

在这里有好几种方式,我们分别来尝试下;

(1)获取所有的sheet

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Names = Workbook.sheet_names()   
print(Sheet_Names)   

运行结果如下:

['汇总', '姓名', '年龄', '地区', '出生年月', '爱好']   

(2)根据索引获取sheet

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Names = Workbook.sheet_by_index(0)   print(Sheet_Names.name)   

运行结果如下:

汇总   

从上面我们可以看到,我们根据索引为“0”,获取到了第一个sheet,那么同理,要获取第二个sheet的话,我们是不是应该配置索引为“1”即可;

(3)根据名字获取sheet

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_name('出生年月')   print(Sheet_Name.name)   

运行结果如下:

出生年月   

(4)获取所有sheet对象

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Names = Workbook.sheets()   
print(Sheet_Names)   
for i in Sheet_Names:       
print(i.name)   

运行结果如下:

[<xlrd.sheet.Sheet object at 0x000001554E142E20>, <xlrd.sheet.Sheet object at 0x000001554E142F10>, <xlrd.sheet.Sheet object at 0x000001554E142F40>, <xlrd.sheet.Sheet object at 0x000001554E142F70>, <xlrd.sheet.Sheet object at 0x000001554E151A60>, <xlrd.sheet.Sheet object at 0x000001554E131DC0>]   汇总   姓名   年龄   地区   出生年月   爱好   

3.3 获取该sheet中的行数和列数

import xlrd      
WorkBook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = WorkBook.sheet_by_name('汇总')   
print("名字为{}的sheet中,一共有{}行".format(Sheet_Name.name, Sheet_Name.nrows))   
print("名字为{}的sheet中,一共有{}列".format(Sheet_Name.name, Sheet_Name.ncols))   

运行结果如下:

名字为汇总的sheet中,一共有9行   名字为汇总的sheet中,一共有5

4、使用python获取excel中指定单元格的数据

Cell就表示单元格,单元格也就是excel中的最小单位,一个个小格子就是单元格。

且,在python中,每一行和列都是从0开始,从左上角依次类推+1的。

4.1 获取指定行和列的cell对象

方法:

sheet.cell(row,col)   

示例代码:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.cell(0, 1))  
# 获取第0行,第1列的数据,也就是B1单元格的数据   

运行结果如下:

text:'年龄'   

4.2 获取指定行的某几列的cell对象

方法:

sheet.row_slice(row,start_col,end_col)   

示例代码:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.row_slice(1, 0, 5))  
# 获取第一行的0-5列之间的,不包括第5列   

运行结果如下:

[text:'张三', number:18.0, text:'北京', xldate:36526.0, text:'吃饭']   

4.3 获取指定列的某几行的cell对象

方法:

sheet.col_slice(col,start_row,end_row)   

示例代码如下:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.col_slice(0, 0, 5))  
# 获取第0列的,0-5行之间的数据,不包括第5行   

运行结果如下:

[text:'姓名', text:'张三', text:'李四', text:'王五', text:'赵六']   

4.4 获取指定行和列的值

方法:

sheet.cell_value(row,col)   

示例代码如下:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.cell_value(1, 2))  
# 获取第1行,第二列的单元格的数据,即C2的数据   

运行结果如下:

北京   

4.5 获取指定行的某几列的值

方法:

sheet.row_values(row,start_col,end_col)   

示例代码如下:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.row_values(1, 2, 5))  
# 获取第一行,第2-5列的值   

运行结果如下 :

['北京', '2000-1-1', '吃饭']   

4.6 获取指定列的某几行的值

方法:

sheet.col_values(col,start_row,end_row)   

示例代码如下:

import xlrd      
Workbook = xlrd.open_workbook('ceshi.xlsx')   
Sheet_Name = Workbook.sheet_by_index(0)   print(Sheet_Name.col_values(4, 0, 3))  
# 获取第4列,0-3行的值,不包括第三行   

运行结果如下:

['爱好', '吃饭', '睡觉']   

5、excel中Cell的数据类型

  • xlrd.XL_CELL_TEXT(Text):文本类型;

  • xlrd.XL_CELL_NUMBER(Number):数值类型;

  • xlrd.XL_CELL_DATE(Date):日期时间类型;

  • xlrd.XL_CELL_BOOLEAN(Bool):布尔类型;

  • xlrd.XL_CELL_BLANK:空白数据类型。

6、使用python往excel中写入数据

6.1 步骤梳理

  • 导入xlwt模块

  • 创建一个Workbook对象

  • 创建一个Sheet对象

  • 使用sheet.write(row,col,data)方法把数据写入到Sheet下指定行和列中

  • 保存成Excel文件

6.2 示例代码

import xlwt
import random

Workbook = xlwt.Workbook(encoding='utf-8')
Sheet_Name = Workbook.add_sheet('运维家')
Headers = ['姓名', '年龄', '地区']
for index, Header in enumerate(Headers):
    Sheet_Name.write(0, index, Header)

Names = ['张三', '李四', '王五']
Areas = ['北京', '山西', '上海']

for index, Name in enumerate(Names):
    Sheet_Name.write(index + 1, 0, Name)
    Sheet_Name.write(index + 1, 1, random.randint(20, 40))
    Sheet_Name.write(index + 1, 2, random.choice(Areas))

Workbook.save('ceshi2.xls')

运行之后,会生成一个名字为ceshi2.xls的文件,我们打开看看是什么样子的,如下图:

python对xlsx写入单元格,python,excel,开发语言

从上面看,这个文件是符合我们的预期的。

7、使用python在已有的excel文件中新增内容

7.1 步骤梳理

  • 导入xlrd模块

  • 读取已有的excel文件,生成一个对象

  • 使用put_cell(self, rowx, colx, ctype, value, xf_index)方法添加数据

  • 导入xlwt模块

  • 新建一个workbook对象

  • 新建一个sheet对象

  • 将刚添加过数据的sheet每个单元格的数据读取出来,并写入到新的excel文件中

  • 保存excel文件

7.2 示例代码

import xlrd, xlwt

Workbook = xlrd.open_workbook('ceshi2.xls')
Sheet_Name = Workbook.sheet_by_index(0)
Sheet_Name.put_cell(4, 0, xlrd.XL_CELL_TEXT, '赵六', None)
Sheet_Name.put_cell(4, 1, xlrd.XL_CELL_TEXT, '30', None)
Sheet_Name.put_cell(4, 2, xlrd.XL_CELL_TEXT, '吃饭', None)

Workbook_1 = xlwt.Workbook(encoding='utf-8')
Sheet_Name_1 = Workbook_1.add_sheet(Sheet_Name.name)
for row in range(Sheet_Name.nrows):
    for col in range(Sheet_Name.ncols):
        Sheet_Name_1.write(row, col, Sheet_Name.cell_value(row, col))

Workbook_1.save('ceshi3.xls')

运行之后,会生成一个ceshi3.xls文件,不止将ceshi2.xls文件中的内容放置到了ceshi3.xls文件中,并新增了一行信息,如下图:

python对xlsx写入单元格,python,excel,开发语言

报错解决

报错一

xlrd.biffh.XLRDError: Excel xlsx file; not supported   

这个意思是你的xlrd版本太高了,卸载重新安装一个1.2.0版本的就好了。

pip install xlrd==1.2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple   

学习资源推荐

除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。

这里给大家展示一下我进的最近接单的截图

python对xlsx写入单元格,python,excel,开发语言

😝朋友们如果有需要的话,可以点击下方链接领取或者V扫描下方二维码联系领取,也可以内推兼职群哦~

🎁 CSDN大礼包,二维码失效时,点击这里领取👉:【学习资料合集&相关工具&PyCharm永久使用版获取方式】

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

python对xlsx写入单元格,python,excel,开发语言

1.Python学习路线

python对xlsx写入单元格,python,excel,开发语言

python对xlsx写入单元格,python,excel,开发语言

2.Python基础学习

01.开发工具

python对xlsx写入单元格,python,excel,开发语言

02.学习笔记

python对xlsx写入单元格,python,excel,开发语言

03.学习视频

python对xlsx写入单元格,python,excel,开发语言

3.Python小白必备手册

python对xlsx写入单元格,python,excel,开发语言

4.数据分析全套资源

python对xlsx写入单元格,python,excel,开发语言

5.Python面试集锦

01.面试资料

python对xlsx写入单元格,python,excel,开发语言

python对xlsx写入单元格,python,excel,开发语言

02.简历模板

python对xlsx写入单元格,python,excel,开发语言

python对xlsx写入单元格,python,excel,开发语言

🎁 CSDN大礼包,二维码失效时,点击这里领取👉:【学习资料合集&相关工具&PyCharm永久使用版获取方式】文章来源地址https://www.toymoban.com/news/detail-778662.html

因篇幅有限,仅展示部分资料,添加上方即可获取👆

------ 🙇‍♂️ 本文转自网络,如有侵权,请联系删除 🙇‍♂️ ------

到了这里,关于python如何操作excel,在excel中读取和写入数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • python自动化办公——定制化读取Excel数据并写入到word表格

    最近到了毕业设计答辩的时候,老师让我帮毕业生写一段毕业设计的功能就是提供一个 学士学位授予申请表 ,根据定制化需求,编写定制化代码。 docx格式的word如下图。 再提供一个Excel表格,要求可以直接读取表格里的对应内容,填入到word表格里的对应位置。表格是我自己

    2024年02月10日
    浏览(42)
  • 前端使用xlsx插件读取excel文件数据

    使用 xlsx 插件在前端读取Excel文件数据具有以下优点和缺点,适用于以下场景: 简单易用: xlsx 插件提供了简单的API来读取Excel文件数据,无需复杂的配置和依赖。 完整的功能: xlsx 插件支持读取各种Excel文件格式,包括XLS和XLSX等常见格式,可以读取多个工作表和多种数据类

    2024年02月14日
    浏览(38)
  • 如何使用Python给Excel写入数据

    openpyxl三步走 获取work book 获取 work sheet 再然后 获取单元格 进行操作 保存文件 安装OpenpyXl 导包方式以下两种都可以 from openpyxl import Workbook from openpyxl import load_workbook 向工作表中写入数据 保存至文件 最保险的保存方式是调用 save 方法保存到指定文件: 结果如下: 向工作表中

    2024年02月14日
    浏览(28)
  • C# 快速将数据写入 Excel 单元格

    目录 性能问题 Excel元素结构及写入原理 范例运行环境 配置Office DCOM 实现代码 组件库引入 核心代码 WriteArrayToExcel 神奇的 911 事件 小结 将生成或查询到的数据,导出到 Excel 是应用中常用的一项功能。其中一些标准的写入单元格的方法如下: 请注意,office 元素大多的起始序号

    2024年04月15日
    浏览(18)
  • [excel与dict] python 读取excel内容并放入字典、将字典内容写入 excel文件

    一 读取excel内容、并放入字典 1 读取excel文件 2 读取value,舍弃行号 3 读取为字典 一 读取excel内容、并放入字典(完整代码) 二、将字典内容写入 excel文件 1 假设已有字典内容为: 即student列表里有4个字典, 第一个字典里面有3对key-value \\\"num\\\": 1, \\\"name\\\": \\\"cod1\\\", \\\"wfm\\\": 0.1 2 导入Workb

    2024年02月04日
    浏览(33)
  • Apache POI实现Excel导入读取数据和写入数据并导出

    Apache POI POI介绍 Apache POI是用Java编写的免费开源的跨平台的Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能,其中使用最多的就是使用POI操作Excel文件。 maven坐标: POI结构: 入门案例 ExcelTest .java文件 从Excel文件读取数据

    2024年02月12日
    浏览(31)
  • Python如何读取Excel表格数据

    环境: Pycharm IDE 3.9  2021.2.1 Excel作为目前主要的流行数据表格,其存储的数据整齐,强可观性。需要对大量的数据进行分析时,可以利用python脚本语言进行数据分析。 python读取excel数据: 1.打开 pycharm IDE ,新建项目,在IDE 的UI界面下点击左下角的 Python Packages .   此项用于安

    2024年02月05日
    浏览(31)
  • Python——openpyxl读取Excel表格(读取、单元格修改、单元格加底色)

    🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️‍🌈 博客主页:一晌小贪欢的博客主页 👍 该系列文章专栏:Python办公自动化专栏 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏 ❤️ 欢迎各位佬关注! ❤️ 如我在K列,增加了

    2024年03月20日
    浏览(31)
  • 基于MFC的图书馆图书管理系统 VC++操作Excel文档的方法,读取,查询,写入,修改,删除

    VS2017加装MFC以及创建第一个MFC程序_赵满刚的博客-CSDN博客 MFC读取Excel文件+数据处理+写入Excel_土豪gold的博客-CSDN博客 VS2013 MFC连接Access数据库(ADO)详细版实例操作(含Combo Box读取数据库内容,附源码)_土豪gold的博客-CSDN博客_mfc连接access数据库 MFC 导入EXCEL到数据库_weixin_338

    2024年02月06日
    浏览(31)
  • 基于MFC的图书馆图书管理系统 VC++操作Excel文档的方法,读取,查询,写入,修改,删除

    VS2017加装MFC以及创建第一个MFC程序_赵满刚的博客-CSDN博客 MFC读取Excel文件+数据处理+写入Excel_土豪gold的博客-CSDN博客 VS2013 MFC连接Access数据库(ADO)详细版实例操作(含Combo Box读取数据库内容,附源码)_土豪gold的博客-CSDN博客_mfc连接access数据库 MFC 导入EXCEL到数据库_weixin_338

    2024年02月06日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包