GreenX5 Asked:2023-04-19 12:05:05 +0000 UTC2023-04-19 12:05:05 +0000 UTC 2023-04-19 12:05:05 +0000 UTC 如何获得一年前一个月的纪元时间? 772 立即获取当前纪元时间(经过的秒数) import time epoch_time = int(time.time()) 如何获得当前高程的导数: 一个月前 三个月前 一年前 两年前? 简单地减去一个月中的秒数,一年似乎是一个糟糕的选择,因为。月份有不同的天数... python 1 个回答 Voted Best Answer diduk001 2023-04-19T12:49:50Z2023-04-19T12:49:50Z fromtimestamp首先,您需要使用库函数将时间戳转换为日期datetime,然后使用从日期中减去所需的天数/月数/年数dateutil.relativedelta.relativedelta import datetime import dateutil.relativedelta import time epoch_time = int(time.time()) current_date = datetime.datetime.fromtimestamp(epoch_time) month_ago = current_date - dateutil.relativedelta.relativedelta(months=1) three_month_ago = current_date - dateutil.relativedelta.relativedelta(months=3) year_ago = current_date = current_date - \ dateutil.relativedelta.relativedelta(years=1) two_years_ago = current_date = current_date - \ dateutil.relativedelta.relativedelta(years=2) print(current_date) print(month_ago) print(three_month_ago) print(year_ago) print(two_years_ago) # 2020-04-19 09:41:28 # 2023-03-19 09:41:28 # 2023-01-19 09:41:28 # 2022-04-19 09:41:28 # 2020-04-19 09:41:28 PS:因为你没有定义“一个月前”,我假设它的意思是“上个月的一天不大于当前的一天”。因此,例如,如果您在 2023 年 3 月 31 日调用此代码,则一个月前的日期将为 2023 年 2 月 28 日。如果要减去天数,可以使用days=31instead of months=1。如果你想获得当月的天数,你可以使用模块calendar: import calendar days_in_month = calendar.monthrange(current_year, current_month)[1] UPD:要准确获取时间戳,您可以使用.timestamp(). 例子: current_date = datetime.datetime.fromtimestamp(epoch_time) print(int(current_date.timestamp()))
fromtimestamp首先,您需要使用库函数将时间戳转换为日期datetime,然后使用从日期中减去所需的天数/月数/年数dateutil.relativedelta.relativedeltaPS:因为你没有定义“一个月前”,我假设它的意思是“上个月的一天不大于当前的一天”。因此,例如,如果您在 2023 年 3 月 31 日调用此代码,则一个月前的日期将为 2023 年 2 月 28 日。如果要减去天数,可以使用
days=31instead ofmonths=1。如果你想获得当月的天数,你可以使用模块calendar:UPD:要准确获取时间戳,您可以使用
.timestamp(). 例子: