Python 操作 Excel 全攻略 | 包括读取、写入、表格操作、图像输出和字体设置

简介: Python 操作 Excel 全攻略 | 包括读取、写入、表格操作、图像输出和字体设置

前言


当今,Excel 是许多人日常生活和工作中必不可少的工具。但是在使用 Excel 的过程中,我们常常需要面对数据过于庞大、操作复杂等问题。Python 作为一门强大的编程语言,具有对 Excel 文件进行读写、表格操作、图像输出和字体设置等功能的能力,可以极大地提高我们处理 Excel 文件的效率。

本文将为您提供 Python 操作 Excel 文件的全面攻略,包括如何读取和写入 Excel 文件、Excel 表格的操作、图像的输出和字体的设置等方面,以及详细的代码注释。无论是初学者还是有一定经验的 Python 开发者,都可以通过本文掌握这些实用技巧,更好地应用 Python 处理 Excel 文件,提高工作效率,节约时间成本。

快来了解本文所提供的 Python 操作 Excel 全攻略,让您更加得心应手地使用这个强大的工具!


Python 操作 Excel 教程


本教程将介绍如何使用 Python 操作 Excel 文件,包括 Excel 文件的读取与写入、Excel 表格的操作、图像的输出和字体的设置等内容。


1. Excel 文件的读取与写入


首先需要安装 openpyxl 库,该库为 Python 对 Excel 文件进行操作的工具包。

import openpyxl
# 打开 Excel 文件
workbook = openpyxl.load_workbook("文件地址.xlsx")
# 获取当前活动工作表(默认为第一张)
sheet = workbook.active
# 遍历每一行并输出 A 列的值
for row in sheet.iter_rows(min_row=1, min_col=1, max_row=sheet.max_row, max_col=1, values_only=True):
    for cell in row:
        print(cell) 
# 创建新的 Excel 文件并添加数据
new_workbook = openpyxl.Workbook()
new_sheet = new_workbook.active
new_sheet["A1"] = "Hello, World!"
new_workbook.save("新文件地址.xlsx")

注释:

  • openpyxl.load_workbook() 函数用于打开 Excel 文件,并返回一个 Workbook 对象。
  • workbook.active 属性获取到当前活动的工作表,即第一张工作表。
  • sheet.iter_rows() 方法用于迭代每一行并输出 A 列的值。
  • openpyxl.Workbook() 函数用于创建新的 Excel 文件,并返回一个 Workbook 对象。
  • new_workbook.active 属性获取到当前活动的工作表,即第一张工作表。
  • new_sheet["A1"] 将值 “Hello, World!” 添加到新的 Excel 文件的 A1 单元格中。
  • new_workbook.save() 方法将新的 Excel 文件保存到指定的地址中。


2. Excel 表格的操作



2.1 插入和删除行和列


import openpyxl
# 打开 Excel 文件
workbook = openpyxl.load_workbook("文件地址.xlsx")
sheet = workbook.active
# 在第一行添加数据
sheet.insert_rows(1)
# 在第一列添加数据
sheet.insert_cols(1)
# 删除第一行
sheet.delete_rows(1)
# 删除第一列
sheet.delete_cols(1)
workbook.save("文件地址.xlsx")

注释:

  • sheet.insert_rows() 方法用于在指定的行之前插入一行数据。
  • sheet.insert_cols() 方法用于在指定的列之前插入一列数据。
  • sheet.delete_rows() 方法用于删除指定的行。
  • sheet.delete_cols() 方法用于删除指定的列。


2.2 遍历表格中的单元格并修改值


import openpyxl
# 打开 Excel 文件
workbook = openpyxl.load_workbook("文件地址.xlsx")
sheet = workbook.active
# 遍历 A 列并将单元格里面的值加 1
for cell in sheet["A"]:
    cell.value += 1
workbook.save("文件地址.xlsx")

注释:

  • sheet["A"] 获取到 A 列的所有单元格,并返回一个 tuple 对象。
  • 遍历 tuple 中的每个单元格,并将单元格里面的值加 1。


3. 图像的输出


3.1 输出柱状图

import openpyxl
from openpyxl.chart import BarChart, Reference, Series
# 打开 Excel 文件
workbook = openpyxl.load_workbook("文件地址.xlsx")
sheet = workbook.active
# 获取 A 和 B 列中的数据
data = Reference(sheet, min_row=1, min_col=1, max_row=sheet.max_row, max_col=2)
labels = Reference(sheet, min_row=1, min_col=1, max_row=sheet.max_row, max_col=1)
# 创建柱状图
chart = BarChart()
# 添加数据
chart.add_data(data=data)
# 添加横坐标标签
chart.set_categories(labels)
# 设置标题
chart.title = "销售数据"
# 将图表插入到工作表的 D1 单元格
sheet.add_chart(chart, "D1")
# 保存文件
workbook.save("文件地址.xlsx")

注释:

  • Reference() 函数用于获取 Excel 表格中指定数据范围的引用。
  • BarChart() 函数用于创建一个柱状图对象。
  • chart.add_data() 方法用于向柱状图中添加数据。
  • chart.set_categories() 方法用于设置图表的横坐标标签。
  • chart.title 属性用于设置图表的标题。
  • sheet.add_chart() 方法用于将柱状图插入到指定的单元格中。


4. 字体的设置


4.1 设置单元格的字体大小和颜色


import openpyxl
from openpyxl.styles import Font, colors
# 创建新的 Excel 文件
workbook = openpyxl.Workbook()
sheet = workbook.active
# 添加数据,并设置字体大小和颜色
sheet["A1"] = "Hello, World!"
font = Font(size=16, color=colors.RED)
sheet["A1"].font = font
workbook.save("新文件地址.xlsx")

注释:

  • Font() 函数用于设置字体的风格。
  • colors 模块用于定义颜色常量,如 RED、BLUE 等。
  • sheet["A1"].font 属性用于设置单元格的字体。


4.2 设置单元格的加粗和斜体


import openpyxl
from openpyxl.styles import Font
# 创建新的 Excel 文件
workbook = openpyxl.Workbook()
sheet = workbook.active
# 添加数据,并设置字体的加粗和斜体
sheet["A1"] = "Hello, World!"
font = Font(bold=True, italic=True)
sheet["A1"].font = font
workbook.save("新文件地址.xlsx")

注释:

  • Font() 函数的 bolditalic 参数用于设置字体是否加粗和是否倾斜。


4.3 设置单元格的边框和填充颜色


import openpyxl
from openpyxl.styles import Border, Side, PatternFill, colors
# 创建新的 Excel 文件
workbook = openpyxl.Workbook()
sheet = workbook.active
# 添加数据,并设置单元格的边框和填充颜色
sheet["A1"] = "Hello, World!"
# 设置边框
border = Border(
    left=Side(style="thin", color=colors.DARKGRAY),
    right=Side(style="thin", color=colors.DARKGRAY),
    top=Side(style="thin", color=colors.DARKGRAY),
    bottom=Side(style="thin", color=colors.DARKGRAY)
)
sheet["A1"].border = border
# 设置填充颜色
fill = PatternFill(fill_type="solid", fgColor=colors.YELLOW)
sheet["A1"].fill = fill
workbook.save("新文件地址.xlsx")

注释:

  • Border() 函数用于设置单元格的边框样式,其中 Side() 函数用于设置边框的粗细和颜色。
  • PatternFill() 函数用于设置单元格的填充颜色,其中 fill_type 参数为填充的类型,fgColor 参数为填充的前景色。


总结


以上是 Python 操作 Excel 的一些常见操作内容,包括读取和写入 Excel 文件、表格的操作、图像的输出以及字体的设置等方面。笔芯

相关文章
|
23天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
21天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
112 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
1月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
112 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
1月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
63 3
|
20天前
|
机器学习/深度学习 前端开发 数据处理
利用Python将Excel快速转换成HTML
本文介绍如何使用Python将Excel文件快速转换成HTML格式,以便在网页上展示或进行进一步的数据处理。通过pandas库,你可以轻松读取Excel文件并将其转换为HTML表格,最后保存为HTML文件。文中提供了详细的代码示例和注意事项,帮助你顺利完成这一任务。
32 0
|
2月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
110 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
2月前
|
Python
python读写操作excel日志
主要是读写操作,创建表格
68 2
|
2月前
|
JSON API 数据格式
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
60 0
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
|
2月前
|
索引 Python
Excel学习笔记(一):python读写excel,并完成计算平均成绩、成绩等级划分、每个同学分数大于70的次数、找最优成绩
这篇文章是关于如何使用Python读取Excel文件中的学生成绩数据,并进行计算平均成绩、成绩等级划分、统计分数大于70的次数以及找出最优成绩等操作的教程。
99 0
|
2月前
|
存储 Python
Python实战项目Excel拆分与合并——合并篇
Python实战项目Excel拆分与合并——合并篇
69 0