Python玩转Excel的读写改实例

Python玩转Excel的读写改实例

在这篇文章中,我们将通过Python演示如何读取、编写和修改Excel文件。Excel是广泛用于办公的数据处理软件,它具有灵活的表格和计算功能。Python的openpyxl库提供了操作Excel文件的简便方法。我们将在本文中讨论如何使用openpyxl库对Excel进行读取、编写和修改。

准备工作

在开始本文的演示之前,我们需要安装一个Python包——openpyxl。请在命令提示符或Shell中输入以下命令:

pip install openpyxl

该命令将会自动安装openpyxl包。

接下来,我们需要准备一个 Excel 文件,作为我们演示的数据源。本示例中我们使用一个简单的书籍清单,记录了书名、作者和价格。你可以下载这个示例文件 books.xlsx

该文件包含两个工作表:Sheet1 和 Sheet2。我们将重点关注Sheet1。在 Sheet1 中,第一个单元格是标题。接下来的每一行都包含一本书的信息,其中第一列是书名,第二列是作者,第三列是价格。

示例1:读取 Excel 文件

我们将首先演示如何使用 Python 读取 Excel 文件。我们将使用 openpyxl 库中的 load_workbook 方法读取 Excel 文件。load_workbook 方法返回一个 Workbook 对象,该对象包含 Excel 文件中的全部工作表。

import openpyxl

# 打开Excel文件
book = openpyxl.load_workbook('books.xlsx')
# 获取Sheet1
sheet = book['Sheet1']

# 遍历Sheet1中的每一行数据
for row in sheet.iter_rows(min_row=2, values_only=True):
    # 打印每一本书的信息
    print(f'书名:{row[0]},作者:{row[1]},价格:{row[2]}')

输出结果如下:

书名: Python 编程从入门到实践,作者:Eric Matthes,价格:99.0
书名: Python 基础教程,作者:Magnus Lie Hetland,价格:69.0
书名: Python 核心编程,作者:Wesley Chun,价格:89.0

示例2:向 Excel 文件中添加数据

现在,我们将演示如何使用Python将新纪录添加到已有的Excel文件中。我们将在Sheet1的下一行添加一本书。

import openpyxl

# 打开Excel文件
book = openpyxl.load_workbook('books.xlsx')
# 获取Sheet1
sheet = book['Sheet1']

# 在Sheet1的最后一行添加新的书籍信息
new_row = ['Fluent Python', 'Luciano Ramalho', 149.0]
sheet.append(new_row)

# 保存Excel文件
book.save('books.xlsx')

输出结果中不显示任何信息,但是我们可以重新打开Excel文件验证是否添加了新纪录。

示例3:修改 Excel 文件中的数据

我们也可以使用 openpyxl 库更新数据。下面的示例演示如何将价格最高的书的价格增加10%。

import openpyxl

# 打开Excel文件
book = openpyxl.load_workbook('books.xlsx')
# 获取Sheet1
sheet = book['Sheet1']

max_row = None
max_price = 0
# 寻找Sheet1中价格最高的书
for i, row in enumerate(sheet.iter_rows(min_row=2, values_only=True)):
    if row[2] > max_price:
        max_price = row[2]
        max_row = i + 2

if max_row is not None:
    # 将价格增加10%
    sheet.cell(row=max_row, column=3, value=1.1 * sheet.cell(row=max_row, column=3).value)

# 保存Excel文件
book.save('books.xlsx')

输出结果中不显示任何信息,但是我们可以重新打开Excel文件验证是否更新了价格信息。

总结

在这篇文章中,我们演示了在Python中读取、编写和修改Excel文件的方法。我们使用 openpyxl 库进行操作,并展示了三个示例:读取文件、向文件中添加新数据和修改文件中的数据。这些技术可以用于处理各种数据处理任务。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python玩转Excel的读写改实例 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • python使用os.listdir和os.walk获得文件的路径的方法

    当我们需要获取计算机中的文件路径、文件名、文件大小、修改日期等信息时,就需要使用Python中的os模块提供的os.listdir和os.walk函数。这两个函数能够帮助我们获得文件路径的方法,下面我们就来详细讲解使用这两个函数获得文件路径的方法。 os.listdir函数 os.listdir函数可以获得指定文件夹下的所有文件名,即在给定目录中列出所有文件…

    python 2023年6月2日
    00
  • Python 16进制与中文相互转换的实现方法

    针对Python 16进制与中文相互转换的实现方法,我将为你提供一个完整攻略。主要分成以下部分: 实现中文转换成16进制字符串 实现16进制转换成中文字符串 实现中文转换成16进制字符串 这一部分主要使用Python内置函数ord()和字符串的encode()函数来实现。其中,ord()函数可以将一个中文字符转换成Unicode编码,encode()函数可以…

    python 2023年5月31日
    00
  • Python 完美解决 Import “模块“ could not be resolved …的问题

    当在Python中导入模块时,有时会遇到“ImportError: No module named ‘module_name’”或“ImportError: cannot import name ‘function_name’”等错误。这些错误通常是由于模块路径不正确或者模块名称拼写错误引起的。本攻略将提供Python完美解决“ImportError: ca…

    python 2023年5月13日
    00
  • python实现对excel中需要的数据的单元格填充颜色

    下面是详细讲解“python实现对excel中需要的数据的单元格填充颜色”的完整实例教程。 准备工作 在开始教程之前,我们需要做一些准备工作。首先,确保你已经安装好了Python和openpyxl库。如果还没有安装openpyxl库,可以使用以下命令进行安装: pip install openpyxl 示例一 我们可以通过以下步骤,实现对Excel中某些单元…

    python 2023年5月14日
    00
  • python实现给字典添加条目的方法

    当我们需要在Python中创建一个新的字典或修改一个已有的字典时,需要给该字典添加一个或多个条目。Python提供了多种方法来实现给字典添加条目的操作,下面是两个示例说明。 使用键值对进行添加 通过在字典名称后面使用方括号、添加新键和相应的值来创建新的键值对,实现给字典添加条目。 >>> my_dict = {‘name’: ‘John’,…

    python 2023年5月13日
    00
  • Python爬取数据保存为Json格式的代码示例

    下面我将为你详细讲解“Python爬取数据保存为Json格式的代码示例”的完整攻略。 一、前置知识 在介绍代码实现之前,我们需要了解一些前置知识: requests库:用于向网站发起HTTP请求并获取响应; json模块:用于将Python数据(如列表、字典)转换为Json格式的字符串,并将Json格式的字符串解析为Python对象; 爬虫基础知识:了解如何…

    python 2023年6月3日
    00
  • Python按键或值对字典进行排序

    下面是Python按键或值对字典进行排序的完整攻略: 按键(key)排序 可以利用Python的内置函数sorted()和字典的items()方法对字典中的键(key)进行排序。具体步骤如下: 使用items()方法把字典转为元组列表,形式为[(key1, value1), (key2, value2), …]。 使用sorted()函数对元组列表进行排…

    python 2023年5月13日
    00
  • python读取相对路径和绝对路径的方法

    下面我来详细讲解一下“python读取相对路径和绝对路径的方法”的攻略。 相对路径和绝对路径 在开始介绍方法前,先简单介绍一下相对路径和绝对路径。 相对路径:基于当前脚本所在位置,向上(..)或向下(.)查找文件或文件夹的路径。例如:”./data/test.txt”表示data文件夹下的test.txt文件。 绝对路径:文件或文件夹在文件系统中具体的路径位…

    python 2023年6月2日
    00
合作推广
合作推广
分享本页
返回顶部