Python 如何在Excel文件中添加时间戳
如果你在Python中处理数据并且需要跟踪更改或监视更新,向Excel文件添加时间戳可能会改变游戏规则。当我们处理大量数据时,可以使用Excel来分析特定修改或事件发生的时间。这可以通过在Excel文件中包含时间戳来实现,时间戳将告诉我们何时对单元格进行了特定的修改。
添加时间戳到Excel文件所需的模块是openpyxl和DateTime。在本文中,我们将详细介绍如何添加时间戳以及使用的模块。
DateTime模块
DateTime模块可以用于处理日期和时间,因为Python中没有日期或时间数据类型。Python已经内置了DateTime模块,所以我们不需要单独安装它。
Python DateTime模块提供了日期和时间操作类。这些框架中的方法的主要参数是日期、时间和时间间隔。因为日期和时间在Python中是对象而不是文本或时间戳,所以对它们做出的任何修改都会产生相同的效果。
Openpyxl
Openpyxl是一个用于读写Excel文件的Python库。数据科学家使用Openpyxl进行数据分析、数据复制、数据挖掘、绘制图表、格式化工作表、添加公式等任务。
在openpyxl中,工作簿被表示为Workbook。一个工作簿中可以有一个或多个工作表。
Sheet是由用于组织数据的单元格组成的单个文档。
Cell是行和列的交叉点。通常用A1、B5等表示。
Row是水平线,由一个数字(1,2等)表示。
Column是垂直线,由一个大写字母(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文件的多个单元格中,您只需按照本文中详细解释的步骤操作即可。我们还详细讨论了程序中使用的模块。