python时间日期相加减的实现示例

 更新时间:2024年02月23日 11:22:23   作者:weixin_40293999  
在实际开发中,我们经常需要对日期进行加减操作,本文主要介绍了python时间日期相加减的实现示例,具有一定的参考价值,感兴趣的可以了解一下

前言

时间日期相加减,单独看没啥意思,但是比如要预测从当前时间开始,未来12个月的股票变化情况,你只拿到了股票的价格的序列值一共12个,需要把它扑到未来12个月,中间可能跨年。

安装插件

python-dateutil

pip install python-dateutil

一、python时间处理月份加减

import datetime
from dateutil.relativedelta import relativedelta
 
datetime_now = datetime.datetime.now()
datetime_three_month_ago = datetime_now - relativedelta(months=3)
print(datetime_three_month_ago)

二、python日期相减(秒、小时、天、月、年)

1.例子

代码如下(示例):

import datetime
today=datetime.datetime.now()
datetime1=today-datetime.timedelta(seconds=10)#减10秒
datetime2=today-datetime.timedelta(minutes=10)#减10分钟
datetime3=today-datetime.timedelta(hours=1)#减1小时
datetime4=today-datetime.timedelta(days=7)#减1天
datetime5=today-datetime.timedelta(weeks=1)#减1周
datetime6=today.strftime('%Y-%m-%d')#将时间格式化为字符串
print('today:',today)
print('second:',datetime1)
print('minute:',datetime2)
print('hour:',datetime3)
print('day:',datetime4)
print('week:',datetime5)
print('时间格式化为字符串:',datetime6)
  
  
import dateutil.relativedelta
datetime7= datetime.datetime.strptime(datetime6, '%Y-%m-%d')#将字符串格式为时间
datetime8 = datetime7 - dateutil.relativedelta.relativedelta(seconds=10)#减10秒
datetime9 = datetime7 - dateutil.relativedelta.relativedelta(minutes=10)#减10分钟
datetime10 = datetime7 - dateutil.relativedelta.relativedelta(hours=1)#减减1小时
datetime11 = datetime7 - dateutil.relativedelta.relativedelta(days=1)#减1天
datetime12 = datetime7 - dateutil.relativedelta.relativedelta(months=1)#减一个月
datetime13 = datetime7 - dateutil.relativedelta.relativedelta(years=1)#减一年
print('字符串格式为时间:',datetime7)
print('second2:',datetime8)
print('minute2:',datetime9)
print('hour2:',datetime10)
print('day2:',datetime11)
print('month2:',datetime12)
print('year:',datetime13)

2.案例:

处理未来12个月

def get_dynamic_year(i):
    today=datetime.datetime.now()
    tmp = today + dateutil.relativedelta.relativedelta(months=i)
    return tmp.year

def get_dynamic_month(i):
    today=datetime.datetime.now()
    tmp = today + dateutil.relativedelta.relativedelta(months=i)
    return tmp.month

pd_insert["year"] = [get_dynamic_year(i) for i in range(1,13)]
pd_insert["month"] = [ get_dynamic_month(i) for i in range(1,13) ]

处理未来7天的日期

    """
    pandas实在是太变态了,用row.name的方式获取行索引
    把每一天都加上
    """
    data_date = today + datetime.timedelta(days=i+1)
    return data_date.strftime("%Y-%m-%d")
pd_insert['forecast_date'] = today.strftime("%Y-%m-%d")
pd_insert['data_date'] = pd_insert.apply(
         lambda x: get_date(x.name, x['forecast_date']), axis=1)

总结

到此这篇关于python时间日期相加减的实现示例的文章就介绍到这了,更多相关python时间日期相加减内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python中的GIL全局解释器锁多线程编程的隐患剖析

    Python中的GIL全局解释器锁多线程编程的隐患剖析

    Python作为一门强大而灵活的编程语言,吸引了大量的开发者,然而,对于多线程编程来说,Python引入了一个概念——全局解释器锁(Global Interpreter Lock,简称GIL),它在一定程度上影响了多线程程序的性能,本文将深入探讨GIL的概念,它对多线程编程的影响以及如何处理与绕过它
    2023-10-10
  • python第三方库学习笔记

    python第三方库学习笔记

    在本篇文章里小编给大家整理了关于python第三方库学习笔记相关内容,有需要的朋友们可以参考下。
    2020-02-02
  • python实现自动化脚本编写

    python实现自动化脚本编写

    自动化在很多时候是很方便的,本文以修改用户名密码单元为案例,编写测试脚本。完成修改用户名密码模块单元测试,感兴趣的可以了解一下
    2021-06-06
  • Python 数据可视化超详细讲解折线图的实现

    Python 数据可视化超详细讲解折线图的实现

    数据可以帮助我们描述这个世界、阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球。而很多时候,一张漂亮的可视化图表就足以胜过千言万语,让我们来用Python实现一个可视化的折线图
    2022-03-03
  • Python for Informatics 第11章之正则表达式(二)

    Python for Informatics 第11章之正则表达式(二)

    这篇文章主要介绍了Python for Informatics 第11章 正则表达式(二)的相关资料,需要的朋友可以参考下
    2016-04-04
  • 关于Python Socket编程的要点详解

    关于Python Socket编程的要点详解

    Socket是网络编程的一个抽象概念,通常我们用一个Socket表示“打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可,这篇文章主要给大家介绍了关于Python Socket编程的相关资料,需要的朋友可以参考下
    2021-08-08
  • Python自动化之UnitTest框架实战记录

    Python自动化之UnitTest框架实战记录

    这篇文章主要给大家介绍了关于Python自动化之UnitTest框架实战的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Python高级特性与几种函数的讲解

    Python高级特性与几种函数的讲解

    今天小编就为大家分享一篇关于Python高级特性与几种函数的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 快速解决PyCharm无法引用matplotlib的问题

    快速解决PyCharm无法引用matplotlib的问题

    今天小编就为大家分享一篇快速解决PyCharm无法引用matplotlib的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Python3实现从文件中读取指定行的方法

    Python3实现从文件中读取指定行的方法

    这篇文章主要介绍了Python3实现从文件中读取指定行的方法,涉及Python中linecache模块操作文件的使用技巧,需要的朋友可以参考下
    2015-05-05

最新评论