将时间(自 YYYY 以来的天数给出)转换为可读的时间格式

Posted

技术标签:

【中文标题】将时间(自 YYYY 以来的天数给出)转换为可读的时间格式【英文标题】:Convert time (given in days since YYYY) into readable time format 【发布时间】:2020-09-10 14:37:54 【问题描述】:

我需要帮助将时间转换为可读格式。我的time 数组(有 580 个元素)是自 1900 年 1 月 1 日以来的天数。如何将其转换为正常时间格式(即 mm-dd-yyyy)?

例如,输入时间是 43,887,在添加到 1900 年 1 月 1 日后输出应该是 02-27-2020。

谢谢!

【问题讨论】:

43887 不等于 02-27-2020 而是 1970-01-01 @CodePope err... 实际上 1900-01-01 + 43,887 天是 2020-02-28... 尝试使用 date.add() 将您的号码添加到 1900 年 1 月 1 日。您现在应该有一个日期时间,您可以使用 time.ctime() 创建一个字符串。 感谢您的更正 - 我解决了这个问题。 【参考方案1】:

datetime.datetimetimedelta 类在这里可以提供帮助。

from datetime import datetime, timedelta

def convert(inp, date1):
    new_date = date1 + timedelta(inp)
    return new_date.strftime("%m-%d-%Y")

date1 = datetime(1900, 1, 1)
print(convert(43887, date1))

【讨论】:

【参考方案2】:

您可以使用 datetime.datetime 类来帮助您。如果这些值被视为整数天(您没有指定它们是什么),则以下方法有效。

   from datetime import datetime
   dt = datetime.fromordinal(43887)
   dt.strftime('%d-%m-%Y')

【讨论】:

以上是关于将时间(自 YYYY 以来的天数给出)转换为可读的时间格式的主要内容,如果未能解决你的问题,请参考以下文章

将 ison 转换为可读的飞镖

如何使用 XSLT 将刻度转换为可读的日期时间?

将 dataFrame 转换为可读的,以便使用 plotly express 绘制条形图

将分钟转换为可读的天/小时/分钟

Power Automate Flow:将 json 转换为可读的 PowerAutomate-Items

如何在 Swift 中将多字符数字格式转换为可读的字符串?