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 文件、表格的操作、图像的输出以及字体的设置等方面。笔芯

相关文章
|
Java API Apache
Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
【10月更文挑战第29天】Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
1299 5
如何设置Excel的快捷键?
【10月更文挑战第19天】如何设置Excel的快捷键?
3342 8
|
12月前
|
移动开发 JavaScript
(H5查看CAD)网页CAD提取图纸表格到excel
本文介绍如何通过自定义MxCAD插件,在Web端智能识别CAD图纸中的表格,实现自动合并与高效导出至Excel,提升数据提取效率与准确性。内容涵盖区域选择、图形识别、表格结构重建、单元格合并及内容导出等关键技术,适用于工程图纸数据自动化处理场景。
|
Python
使用OpenPyXL库实现Excel单元格其他对齐方式设置
本文介绍了如何使用Python的`openpyxl`库设置Excel单元格中的文本对齐方式,包括文本旋转、换行、自动调整大小和缩进等,通过具体示例代码展示了每种对齐方式的应用方法,适合需要频繁操作Excel文件的用户学习参考。
911 85
使用OpenPyXL库实现Excel单元格其他对齐方式设置
|
数据安全/隐私保护
Excel中如何设置随机密码
Excel中如何设置随机密码
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
1474 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
896 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
JavaScript 前端开发 数据可视化
20.6K star!Excel级交互体验!这款开源Web表格神器绝了!
Handsontable 是一款功能强大的 JavaScript 数据表格组件,提供类 Excel 的交互体验。支持实时协作、数据绑定、公式计算等企业级功能,可轻松集成到 React/Vue/Angular 等主流框架。
3103 11
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
808 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别

推荐镜像

更多