一、openpyxl簡介
openpyxl是一個用於讀寫Excel 2010 xlsx/xlsm/xltx/xltm格式文件的Python庫。它可以幫助我們將Excel文件讀取到Python中進行處理,同時也可以創建新的Excel文件。openpyxl具有良好的性能和易用性,在數據處理和導出方面得到了廣泛的應用。
二、日期格式概述
在Excel中日常會遇到日期格式的使用,日期格式可以幫助用戶更方便地查看和理解數據。在Python中使用openpyxl進行處理日期格式同樣便捷。在openpyxl中,日期格式使用Python的datetime模塊表示。在Excel中,日期格式的數值表示從1900年1月1日到指定日期的天數。
三、讀取Excel中的日期格式
使用openpyxl讀取Excel中的日期格式非常簡單。openpyxl支持將日期格式轉化為Python的datetime對象進行處理。以下是一個示例代碼:
import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
ws = wb.active
cell = ws['A1'] # 獲取單元格
print(cell.value) # 打印原始值,例如:43101.0
print(cell.data_type) # 打印數據類型,例如:'n'
print(cell.number_format) # 打印數字格式,例如:'yyyy/m/d'
date_value = cell.value # 保存原始值
date_obj = openpyxl.utils.datetime.from_excel(date_value) # 將原始值轉化為datetime對象
print(date_obj.strftime('%Y-%m-%d')) # 打印日期,例如:'2017-01-01'
在上面的代碼中,我們首先使用load_workbook方法加載Excel文件,然後獲取第一個工作表對象。獲取單元格對象之後,我們可以查看原始值、數據類型以及數字格式。接下來,我們將原始的Excel數值轉化為Python的datetime對象,並使用strftime方法將其格式化為指定的日期格式。在此過程中,我們使用了openpyxl.utils.datetime.from_excel方法幫助進行時間戳轉換。
四、寫入日期格式到Excel中
openpyxl同樣也支持在Python中處理日期格式並寫入Excel文件中,具體的操作如下所示:
import openpyxl
from datetime import datetime
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = datetime(2019, 6, 21) # 設置日期格式
# 設置數字格式為日期
ws['A1'].number_format = 'yyyy/m/d'
wb.save('example.xlsx') # 保存文件
在上述示例代碼中,我們首先創建一個新的Excel文件,然後在第一個工作表中設置日期。為了將日期格式正確寫入,我們需要將Python的datetime對象設置為單元格的值。接下來,我們將單元格的數字格式設置為日期。最終,我們使用save方法將工作簿保存到文件中。
五、總結
在Python中使用openpyxl處理日期格式非常方便,可謂得心應手。我們可以輕鬆地讀取Excel文件中的日期數據信息並將其轉化為Python的datetime對象,同時也可以將Python中的日期數據直接寫入Excel文件中
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/198318.html