zoukankan      html  css  js  c++  java
  • python 获取几天前的时间字符串和时间戳之间的转换

    1.将字符串的时间转换为时间戳

    import time
    a = "2021-08-31 11:00:00"
    # 将其转换为时间数组
    timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
    # 转换为时间戳
    timeStamp = int(time.mktime(timeArray))
    print(timeStamp)
    

    返回结果:
    时间戳为 2021-08-31 11:00:00
    1630378800

    2.字符串格式更改

    import time
    a = "2021-08-31 11:00:00"
    # 如a = "2021-08-31 11:00:00",想改为 a = "2021/08/31 11:00:00"
    #方法:先转换为时间数组,然后转换为其他格式
    timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
    otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
    print(otherStyleTime)
     
    

    返回结果:
    2021/08/31 11:00:00

    3.时间戳转换为指定格式日期

    方法一

    import time
    # 利用localtime()转换为时间数组,然后格式化为需要的格式
    # 时间戳为 2021-08-31 11:00:00
    timeStamp = 1630378800
    timeArray = time.localtime(timeStamp)
    otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
    print(otherStyleTime)
    
    

    返回结果:
    2021-08-31 11:00:00

    方法二

    
    import datetime
    # 时间戳为 2021-08-31 11:00:00
    timeStamp = 1630378800
    dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
    otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
    print(otherStyleTime)
    # 要加8小时,因为时间差8小时
    otherStyleTime = dateArray + datetime.timedelta(hours=8)
    print(otherStyleTime)
    

    返回结果:
    2021-08-31 03:00:00
    2021-08-31 11:00:00

    4.获取当前时间并转换为指定日期格式

    方法一

    import time
    # 获得当前时间时间戳
    # 时间戳
    timeStamp = int(time.time())
    # 转换为其他日期格式,如:"%Y-%m-%d %H:%M:%S"
    timeArray = time.localtime(timeStamp)
    otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
    print(otherStyleTime)
    
    

    返回结果:
    2021-08-31 11:00:00

    方法二

    import datetime
    # 获得当前时间
    # 这是时间数组格式
    now2 = datetime.datetime.now()
    print(now2)
    结果:2021-08-31 11:13:09.658738
    
    # 转换为指定的格式
    otherStyleTime = now2.strftime("%Y-%m-%d %H:%M:%S")
    print(otherStyleTime)
    
    

    返回结果:
    2021-08-31 11:13:09

    5.获得三天七天前的时间

    import time
    import datetime
    # 先获得时间数组格式的日期
    # threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))
    threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 7))
    # 转换为时间戳
    timeStamp = int(time.mktime(threeDayAgo.timetuple()))
    # 转换为其他字符串格式
    otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
    # 注:timedelta()的参数有:days,hours,seconds,microseconds
    print(otherStyleTime)
    

    返回结果:
    2021-08-28 11:00:00
    2021-08-24 11:00:00

    6.给定时间戳,计算该时间的几天前时间

    import datetime
    # 时间戳为 2021-08-31 11:00:00
    timeStamp = 1630378800
    #先转换为datetime
    dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
    threeDayAgo = dateArray - datetime.timedelta(days=3)
    print(threeDayAgo)
    # 要加8小时,因为时间差8小时
    threeDayAgo  = dateArray - datetime.timedelta(days=3) + datetime.timedelta(hours=8)
    print(threeDayAgo)
    

    返回结果:
    2021-08-28 03:00:00
    2021-08-28 11:00:00

    对应时间之间的格式

    %a 星期的简写。如 星期三为Web
    %A 星期的全写。如 星期三为Wednesday
    %b 月份的简写。如4月份为Apr
    %B 月份的全写。如4月份为April
    %c: 日期时间的字符串表示。(如: 04/07/10 10:43:39)
    %d: 日在这个月中的天数(是这个月的第几天)
    %f: 微秒(范围[0,999999])
    %H: 小时(24小时制,[0, 23])
    %I: 小时(12小时制,[0, 11])
    %j: 日在年中的天数 [001,366](是当年的第几天)
    %m: 月份([01,12])
    %M: 分钟([00,59])
    %p: AM或者PM
    %S: 秒(范围为[00,61],为什么不是[00, 59],参考python手册_
    %U: 周在当年的周数当年的第几周),星期天作为周的第一天
    %w: 今天在这周的天数,范围为[0, 6],6表示星期天
    %W: 周在当年的周数(是当年的第几周),星期一作为周的第一天
    %x: 日期字符串(如:04/07/10)
    %X: 时间字符串(如:10:43:39)
    %y: 2个数字表示的年份
    %Y: 4个数字表示的年份
    %z: 与utc时间的间隔 (如果是本地时间,返回空字符串)
    %Z: 时区名称(如果是本地时间,返回空字符串)
    %%: %% => %

  • 相关阅读:
    前端知识---html
    Python3中的运算符
    Python中的print、input函数以及Python中交换两个变量解析
    我的第一个Python程序,定义主函数,eval、format函数详解,
    MySQL创建索引
    认识MySQL中的索引
    MySQL中的函数
    MySQL的查询语句
    MySQL中增删改操作
    MySQL中的运算符和时间运算
  • 原文地址:https://www.cnblogs.com/gqv2009/p/15209946.html
Copyright © 2011-2022 走看看