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

news2024/11/15 17:23:09

文章目录

  • 前言
  • Python 操作 Excel 教程
    • 1. Excel 文件的读取与写入
    • 2. Excel 表格的操作
      • 2.1 插入和删除行和列
      • 2.2 遍历表格中的单元格并修改值
    • 3. 图像的输出
      • 3.1 输出柱状图
    • 4. 字体的设置
      • 4.1 设置单元格的字体大小和颜色
      • 4.2 设置单元格的加粗和斜体
      • 4.3 设置单元格的边框和填充颜色
    • 总结

前言

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/658014.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

android实现无root获取其它应用data私有数据

实现原理就是反编译app的AndroidManifest文件,注意是反编译应用的资源文件,而不是编译整个app,这个操作不需要动应用的dex,难度上要容易得多。解码资源文件要用到一些工具,android下推荐ARSCLib。接下来是对目标应用重…

04_Linux设备树DTB文件OF函数

目录 创建小型模板设备树 添加cpus节点 添加soc节点 添加ocram节点 添加aips1、aips2和aips3这三个子节点 添加eespil、usbotg1和rngb这三个外设控制器节点 设备树在系统中的体现 根节点“/”各个属性 根节点“/”各子节点 特殊节点 aliases子节点 chosen子节点 L…

转专业之我见

写在前面 如果你点进来看这篇文章,说明你的至少有想转专业的想法甚至心里是趋向于转专业的。 但是或许是因为学校只有一次转专业的机会或者有别的原因让你犹豫不决,那么你首先要明确你为什么想要转专业,是因为本专业是天坑专业,…

UI 自动化测试 —— selenium的简单介绍和使用

selenium 是 web 应用中基于 UI 的自动化测试框架,支持多平台、多浏览器、多语言。 提到 UI 自动化就先了解什么是自动化测试? 目录 1. 自动化测试 2. UI 自动化 2.1 UI 自动化的特点 2.2 UI 自动化测试的优缺点 2.3 UI 自动化测试的使用对象 2.4…

PPG信号和ECG信号检测血管年龄

PAT 通常用作动脉硬度的间接测量值或心血管健康的指标。它与各种生理和病理状况有关,例如高血压、动脉硬化和内皮功能障碍。 通过脉搏到达时间进行测量,简单来说就是 先从脉冲传输时间 PPG 数据集中提取数据,提取此数据集中每个对象的脉冲到…

【Python从入门到进阶】24、urllib获取网站电影排行

接上篇《23、urllib使用post请求百度翻译》 上一篇我们讲解了如何使用urllib实现百度翻译的效果。本篇我们来讲解如何使用urllib抓取某某电影排行榜信息。 一、某某电影介绍 1、某某电影网站 某某电影成立于2005年,最初只是一个小型的电影社区,但随着…

【备战秋招】每日一题:2023.05-B卷-华为OD机试 - 报文重排序

为了更好的阅读体检,可以查看我的算法学习博客报文重排序 题目描述 对报文进行重传和重排序是常用的可靠性机制,重传缓中区内有一定数量的子报文,每个子报文在原始报文中的顺序已知,现在需要恢复出原始报文。 输入描述 输入第…

改进YOLOv8 | 优化器篇 | YOLOv8 引入谷歌 Lion 优化器

论文地址:https://arxiv.org/pdf/2302.06675.pdf 代码地址:https://github.com/google/automl/tree/master/lion 我们提出了一种将算法发现作为程序搜索的方法,并将其应用于发现用于深度神经网络训练的优化算法。我们利用高效的搜索技术来探索一个无限且稀疏的程序空间。为了…

【SCADA】测试用KingIOServer采集杰控OPC DA服务器数据

Hello,大家好,我是雷工! 现场做数据采集时经常会遇到需要通过OPC采集数据的情况,本篇测试KingIOServer采集北京杰控组态软件的OPCDA服务器数据。 以下为测试记录过程。 一、KingIOServer的OPC DA数据采集介绍 KingIOServer可以作…

Vue中如何进行分布式日志管理与日志分析

Vue中如何进行分布式日志管理与日志分析 在现代应用程序中,日志是一项重要的功能,用于帮助开发人员和运维人员了解应用程序的行为并进行故障排除。随着应用程序的规模和复杂性的增加,日志管理和分析变得越来越困难。本文将介绍如何在Vue应用…

JSON对象花样进阶

JSON 对象使用在大括号{ }中书写。 对象可以包含多个 key/value(键/值)对。 key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。 key 和 value 中使用冒号(:)分割。 每个…

Postman接口自动化之postman脚本编写

这是之前搞的接口自动化方案,已经在业务测试中实现了使用postman编写接口脚本,通过GitHubJenkinsemail html report实现了接口自动化,现在分块整理一下。 postman脚本编写 1、创建集合 和 目录: 一条业务线下的接口可以放到一个…

ACL2023 | 大模型如何快速构建指令遵循数据集?self-instruct:用175条种子数据追上InstructGPT001效果

一、概述 title:SELF-INSTRUCT: Aligning Language Models with Self-Generated Instructions 论文地址:https://arxiv.org/abs/2212.10560 代码:GitHub - yizhongw/self-instruct: Aligning pretrained language models with instruction…

chatgpt赋能python:Python怎么输出Unicode值

Python怎么输出Unicode值 Python 是一种高级编程语言,因其简单易学和快速开发已成为许多开发者的首选。Python 可以输出多种数据类型,包括字符串和数字。 在许多情况下,输出 Unicode 值是必需的,本文将介绍在 Python 中如何输出 …

shardingsphere第二课-shardingsphere-jdbc的基本使用及各种分片策略

第一章介绍 一、ShardingJDBC客户端分库分表 ShardingSphere-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。 它使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动…

chatgpt赋能python:Python中如何输入一个列表

Python中如何输入一个列表 输入一个列表是Python编程的基本任务之一。列表可以看做是一种序列,其中包含多个元素,用逗号隔开,并用方括号括起来。在Python中,列表是一种非常常见的数据类型,常用于存储和处理一系列相关…

断言操作符介绍

目录 1.延时操作符(##) 1.1 ##m 1.2 ##[m:n] 2.蕴含操作符(|>,|->) 2.1 |>操作符 2.2 |->操作符 3 重复操作符 ([*m][->m][m]) 3.1 连续重复操作符([*m][*m:n]) 3.2 跟随重复操作…

Java选择题刷题记录5

Java堆栈 图片来自https://www.cnblogs.com/cici-new/p/14963762.html 数组、String都在堆里 枚举类 1.枚举类可以实现一个或多个接口,使用enum定义的枚举类默认继承java.lang.Enum类,而不是默认继承Object类,其中 java.lang.Enum类实现了…

机器视觉硬件的选择-标定板

康耐视智能相机Insight-缺陷检测 一>棋盘格的作用 a>畸变校正 径向畸变,径向畸变就是沿着透镜半径方向分布的畸变,产生原因是光线在原理透镜中心的地方比靠近中心的地方更加弯曲,这种畸变在短焦镜头中表现更加明显,径 向畸变主要包括桶形畸变和枕形畸变两种。以下分别…

chatgpt赋能python:Python输入π的方法及其应用

Python输入π的方法及其应用 Python是一门强大的编程语言,其支持的数学函数功能能够帮助用户完成各种复杂的计算操作。当我们需要在Python代码中使用π值时,不同的场景需要不同的处理方法。本文将详细介绍如何在Python中输入π值,并且探讨它…