首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将整数(用xlrd读取)转换回日期格式(使用openpyxl编写)

将整数(用xlrd读取)转换回日期格式(使用openpyxl编写)
EN

Stack Overflow用户
提问于 2014-08-10 19:44:41
回答 2查看 2.1K关注 0票数 3

我使用xlrd读取文件中的一些日期,使用openpyxl在新的工作簿中写入它们。

如果日期是25-6月14日,它写41815。

我只想知道如何再一次把41815变成25-6月14日,或者25/06/14,然而我今天读到的所有材料似乎都太复杂了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-11 08:58:28

使用openpyxl,您可以在适当的位置修改文件。

然而,转换非常容易: Excel处理的是数字( 1900-01-01为时代),它们被格式化为日期,因此您只需设置单元格的格式。

代码语言:javascript
复制
originReport = xlrd.open_workbook('report1').sheet_by_index(0)
destReport = openpyxl.load_workbook('report2')[0]
c = destReport.cell(row=1,column=1)
c.value = originReport.cell_value(0,0)
c.number_format = "d-mmm-yy" # Excel's formatting
# check the conversion
print(c.value)
2014-06-25 00:00:00
票数 1
EN

Stack Overflow用户

发布于 2014-08-11 04:15:57

我认为originReport.cell_value(0,0)的值是'25-jun-14'

代码语言:javascript
复制
from datetime import datetime
import re

a = '25-jun-14'
b = re.sub('-14', '-2014', a)

c = datetime.strptime(b, "%d-%b-%Y")

# write 25/06/2014
destReport.cell(row=1,column=1).value = c.strftime("%d/%m/%Y")

我认为你应该写2014年,而不是14。否则,你怎么知道哪一个代表一年。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25232358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档