如何在 Python 中向 Excel 文件添加时间戳?


如果您正在使用 Python 处理数据,并且需要跟踪更改或监控更新,那么向 Excel 文件添加时间戳可能是一个改变游戏规则的功能。当我们处理大量数据时,可以使用 Excel 来分析特定修改或事件发生的时间。这可以通过在 Excel 文件中包含时间戳来实现,该时间戳将显示何时对某个单元格进行了特定修改。

向 Excel 文件添加时间戳所需的模块将是 openpyxl 和 DateTime。在本文中,我们将详细了解如何添加时间戳以及用于执行此操作的模块。

Datetime 模块

Datetime 模块可用于处理日期和时间,因为 Python 中没有日期或时间数据类型。Python 已经内置了 DateTime 模块,因此我们不需要单独安装它。

Python DateTime 模块中提供了日期和时间操作类。日期、时间和时间段是这些框架中包含的方法的主要参数。因为日期和 DateTime 是 Python 中的对象而不是文本或时间戳,所以您对其进行的任何修改都将产生相同的效果。

Openpyxl

Openpyxl 是一个用于读取和写入 Excel 文件的 Python 库。数据科学家利用 Openpyxl 进行数据分析、数据复制、数据挖掘、绘制图表、格式化工作表和添加公式等任务。

Openpyxl 将用于

  • 工作簿 - 在 openpyxl 中,电子表格被描述为工作簿。工作簿中包含一个或多个工作表。

  • 工作表 - 工作表是由用于组织数据的单元格组成的单个文档。

  • 单元格 - 行和列的交点称为单元格。通常用 A1、B5 等表示。

  • - 行是由数字(1、2 等)指示的水平线。

  • - 列是由大写字母(A、B 等)表示的垂直线。

可以使用 pip 命令安装 Openpyxl,建议在虚拟环境中进行安装。使用 pip 安装 openpyxl 的语法如下所示:

pip install openpyxl

在 Python 中向 Excel 文件添加时间戳的步骤

  • 首先,必须在您的计算机上安装 Python。如果您的计算机上尚未安装 Python,您可以从官方网站下载并安装它。安装 Python 后,您必须安装“openpyxl”Python 包。这可以通过打开命令提示符并输入以下命令来完成:

pip install openpyxl
  • 现在我们已经安装了 openpyxl 模块。下一步是导入“openpyxl”包和“datetime”模块。

  • 使用“load_workbook()”方法打开您要向其中添加时间戳的 Excel 工作簿。

  • 使用“datetime.now()”方法,我们获取当前日期和时间,并使用“strftime()”方法格式化日期和时间,然后将其添加到 A1 单元格中。

  • 最后,使用“save()”方法保存您对工作簿所做的更改。例如,您可以根据需要更改以下代码,如果您想将时间戳添加到其他单元格或以不同的方式格式化日期和时间。

向单个单元格添加时间戳的程序

#Adding time stamp to a single cell
from datetime import datetime
from openpyxl import workbook
import time

#Open the desired workbook using openpyxl
wb = openpyxl.load_workbook('C:/Users/Tutorialspoint/Desktop/example1.xlsx')

#Select the workbook that is currently active
sheet = wb.active

# now we will get the current date and time
now = datetime.now()

# Add the date and time to a particular cell
sheet['A1'] = now.strftime("%Y-%m-%d %H:%M:%S")

# Save the changes to the workbook
wb.save('C:/Users/Tutorialspoint/Desktop/example1.xlsx')

输出

向多个单元格添加时间戳的程序

我们将使用 sleep 方法,以 3 秒的时间差向多个单元格添加时间戳。

import time
from openpyxl import Workbook
import datetime

# Open the workbook and select the sheet
wb = openpyxl.load_workbook('example.xlsx')

#Select the workbook that is currently active
sheet = wb.active
for i in range(10):
    #we will add timestamps to different cells after break of 3 seconds
    sheet.cell(row=1, column=1).value = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time.sleep(3)
    sheet.cell(row=2, column=1).value = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time.sleep(3)
    sheet.cell(row=3, column=1).value = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time.sleep(3)
    sheet.cell(row=4, column=1).value = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time.sleep(3)
    sheet.cell(row=5, column=1).value = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time.sleep(3)

# Save the changes to the workbook
wb.save('C:/Users/Tutorialspoint/Desktop/example.xlsx')

输出

结论

总之,使用 Python 向 Excel 文件中的多个单元格添加时间戳对于跟踪对大量数据的更改可能很有用。这可以通过向多行添加时间戳来实现。如果您想轻松地使用 Python 向 Excel 文件中的多个单元格添加时间戳,您只需按照本文中详细解释的步骤操作即可。我们还详细讨论了程序中使用的模块。

更新于: 2023年5月31日

3K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

立即开始
广告