Python操作Excel常用方法汇总

简介: Python操作Excel常用方法汇总

引言

Python是一种功能强大的编程语言,它可以用来处理各种类型的数据,包括Excel文件。在Python中,我们可以使用多种库来操作Excel文件,其中最常用的库是pandas和openpyxl。本文将介绍使用这两个库来读取、写入和处理Excel文件的常用方法。

一、使用pandas库操作Excel

pandas库是Python中一个流行的数据处理库,它提供了许多方便的方法来读取、写入和处理数据。下面是使用pandas库操作Excel的常用方法:

1、读取Excel文件

使用pandas库读取Excel文件非常简单,可以使用read_excel()函数来实现。下面是一个示例代码:

import pandas as pd  
  
# 读取Excel文件  
df = pd.read_excel('example.xlsx')

在上面的代码中,我们使用pd.read_excel()函数读取了一个名为example.xlsx的Excel文件,并将结果存储在一个DataFrame对象中。

2、写入Excel文件

使用pandas库将数据写入Excel文件也非常方便,可以使用to_excel()函数来实现。下面是一个示例代码:

import pandas as pd  
  
# 创建一个DataFrame对象  
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}  
df = pd.DataFrame(data)  
  
# 将DataFrame对象写入Excel文件  
df.to_excel('output.xlsx', index=False)

在上面的代码中,我们创建了一个包含姓名和年龄数据的DataFrame对象,并使用to_excel()函数将数据写入了一个名为output.xlsx的Excel文件中。index=False参数表示不将行索引写入Excel文件中。

3、处理Excel数据

使用pandas库处理Excel数据非常灵活,可以通过对DataFrame对象进行各种操作来实现。下面是一个示例代码:

import pandas as pd  
  
# 读取Excel文件  
df = pd.read_excel('example.xlsx')  
  
# 对数据进行处理  
df['Age'] = df['Age'].astype(int)  # 将年龄列转换为整数类型  
df = df.dropna()  # 删除包含空值的行  
df = df.sort_values('Age')  # 按年龄排序

在上面的代码中,我们首先使用pd.read_excel()函数读取了一个Excel文件,并将数据存储在一个DataFrame对象中。然后,我们对数据进行了处理,包括将年龄列转换为整数类型、删除包含空值的行、按年龄排序等操作。

二、使用openpyxl库操作Excel

openpyxl是一个专门用于处理Excel文件的库,它支持读取、写入和处理Excel文件的各个部分,包括工作表、单元格等。下面是使用openpyxl库操作Excel的常用方法:

1、读取Excel文件

使用openpyxl库读取Excel文件需要打开文件并获取工作簿对象,然后可以访问工作表、单元格等不同部分。下面是一个示例代码:

from openpyxl import load_workbook  
  
# 打开Excel文件并获取工作簿对象  
wb = load_workbook('example.xlsx')  
  
# 获取工作表对象和单元格对象  
ws = wb.active  # 获取活动工作表对象  
cell = ws['A1']  # 获取A1单元格对象

2、写入Excel文件

使用openpyxl库写入Excel文件需要创建一个新的工作簿对象,然后添加工作表、单元格等不同部分。下面是一个示例代码:

from openpyxl import Workbook  
  
# 创建一个新的工作簿对象  
wb = Workbook()  
  
# 创建一个新的工作表对象并命名为"Sheet1"  
ws = wb.active  
ws.title = "Sheet1"  
  
# 创建一个单元格对象并设置值为"Hello, World!"  
cell = ws['A1']  
cell.value = "Hello, World!"  
  
# 保存工作簿到文件"output.xlsx"  
wb.save("output.xlsx")

在上面的代码中,我们首先创建了一个新的工作簿对象,然后添加了一个名为"Sheet1"的工作表对象。接着,我们创建了一个单元格对象并设置其值为"Hello, World!"。最后,我们将工作簿保存到名为"output.xlsx"的文件中。

3、处理Excel数据

使用openpyxl库处理Excel数据可以通过访问和修改单元格、工作表等不同部分的数据来实现。下面是一个示例代码:

from openpyxl import load_workbook  
  
# 打开Excel文件并获取工作簿对象  
wb = load_workbook('example.xlsx')  
  
# 获取工作表对象和单元格对象  
ws = wb.active  
cell = ws['A1']  
  
# 处理数据并设置单元格的值  
cell.value = "Hello, World!" + str(cell.value)  
  
# 保存工作簿到文件"output.xlsx"  
wb.save("output.xlsx")

在上面的代码中,我们首先打开了名为"example.xlsx"的Excel文件并获取了工作簿对象。然后,我们获取了A1单元格对象并访问了其值。接着,我们将字符串"Hello, World!"与单元格的值拼接起来,并将结果赋值给单元格对象。最后,我们将工作簿保存到名为"output.xlsx"的文件中。

三、高级功能

除了基本的读取、写入和处理Excel数据,openpyxl库还提供了许多高级功能,例如格式化单元格、添加图表等。下面是一个示例代码,演示了如何使用openpyxl库创建Excel图表:

from openpyxl import Workbook  
from openpyxl.chart import BarChart, Reference  
  
# 创建一个新的工作簿对象  
wb = Workbook()  
  
# 创建一个新的工作表对象并命名为"Sheet1"  
ws = wb.active  
ws.title = "Sheet1"  
  
# 创建一些数据  
data = [  
    ['Country', 'Population'],  
    ['China', 1403500365],  
    ['India', 1363407782],  
    ['United States', 3293302651],  
    ['Indonesia', 276361783],  
    ['Pakistan', 225199937],  
]  
  
# 将数据写入工作表  
for row in data:  
    ws.append(row)  
  
# 创建一个数据引用对象  
chart_data = Reference(ws, min_col=2, min_row=1, max_col=3, max_row=6)  
  
# 创建一个条形图对象并设置标题和数据引用对象  
chart = BarChart()  
chart.title = "Top 5 Countries by Population"  
chart.add_data(chart_data)  
  
# 将图表添加到工作表中  
ws.add_chart(chart, "E5")  
  
# 保存工作簿到文件"output.xlsx"  
wb.save("output.xlsx")

在上面的代码中,我们首先创建了一个新的工作簿和工作表对象,并添加了一些数据。然后,我们使用Reference类创建了一个数据引用对象,该对象引用了工作表中的某些列和行。接着,我们创建了一个条形图对象并设置标题和数据引用对象。最后,我们将图表添加到工作表中,并将工作簿保存到名为"output.xlsx"的文件中。

总结

在本文中,我们介绍了使用pandas和openpyxl库进行Excel数据操作的方法。通过使用pandas库的read_excel函数,我们可以轻松地读取Excel文件并将数据存储在DataFrame对象中。使用to_excel函数,我们可以将DataFrame对象中的数据写入Excel文件中。此外,我们还介绍了使用openpyxl库来处理Excel数据的各种方法,包括访问和修改单元格、工作表等不同部分的数据,以及创建图表等高级功能。

总之,使用pandas和openpyxl库可以方便地操作Excel数据,包括读取、写入和处理数据。这些库提供了灵活和高效的方法来处理Excel文件,可以帮助我们更好地分析和利用Excel数据。

相关文章
|
1月前
|
测试技术 API Python
【10月更文挑战第1天】python知识点100篇系列(13)-几种方法让你的电脑一直在工作
【10月更文挑战第1天】 本文介绍了如何通过Python自动操作鼠标或键盘使电脑保持活跃状态,避免自动息屏。提供了三种方法:1) 使用PyAutoGUI,通过安装pip工具并执行`pip install pyautogui`安装,利用`moveRel()`方法定时移动鼠标;2) 使用Pymouse,通过`pip install pyuserinput`安装,采用`move()`方法移动鼠标绝对位置;3) 使用PyKeyboard,同样需安装pyuserinput,模拟键盘操作。文中推荐使用PyAutoGUI,因其功能丰富且文档详尽。
|
10天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
45 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
WK
|
20天前
|
Python
Python中format_map()方法
在Python中,`format_map()`方法用于使用字典格式化字符串。它接受一个字典作为参数,用字典中的键值对替换字符串中的占位符。此方法适用于从字典动态获取值的场景,尤其在处理大量替换值时更为清晰和方便。
WK
68 36
|
1月前
|
机器学习/深度学习 数据采集 数据挖掘
11种经典时间序列预测方法:理论、Python实现与应用
本文将总结11种经典的时间序列预测方法,并提供它们在Python中的实现示例。
63 2
11种经典时间序列预测方法:理论、Python实现与应用
|
1月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
46 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
25天前
|
Python
python读写操作excel日志
主要是读写操作,创建表格
51 2
|
27天前
|
开发者 Python
Python中的魔法方法与运算符重载
在Python的奇妙世界里,魔法方法(Magic Methods)和运算符重载(Operator Overloading)是两个强大的特性,它们允许开发者以更自然、更直观的方式操作对象。本文将深入探讨这些概念,并通过实例展示如何利用它们来增强代码的可读性和表达力。
|
1月前
|
Linux Python
Python获得本机本地ip地址的方法
【10月更文挑战第8天】 socket模块包含了丰富的函数和方法,可以获取主机的ip地址,例如gethostbyname方法可以根据主机名获取ip地址,gethostbyname_ex方法可以获得本机所有ip地址列表,也可以使用netifaces模块获取网卡信息。
36 0
|
1月前
|
SQL 安全 数据库
Python防止SQL注入攻击的方法
Python防止SQL注入攻击的方法
49 0
|
1月前
|
Python
Python中tqdm模块的常用方法和示例
`tqdm` 是一个快速、可扩展的Python进度条库,适用于长循环中添加进度提示。通过封装迭代器 `tqdm(iterator)`,可以轻松实现进度显示。支持自定义描述、宽度及嵌套进度条,适用于多种迭代对象。在Jupyter notebook中,可自动调整显示效果。
35 0

热门文章

最新文章