• 技术文章 >Python技术 >Python基础教程

    python3时间strptime如何逆变换?

    小妮浅浅小妮浅浅2020-11-17 15:48:05原创1997

    python中对于时间的运用并不是单一的,涉及到各个模块之间的转换操作。有的是单方面的进行转换,有的是可以相互转换。而今天小编想问大家知道strptime逆转换吗?对于逆转换这个词,我们提到的不是很多,所以今天学一下逆转换在python3时间中使用的内容吧。


    我们的程序不可能孤立存在。它可能从其它信息源(比如文本文件、数据库、网络)读取到时间变量,或者将一个时间变量传递给这些系统。或者我们使用了第三方的库,他们对时间有着不同的处理方法。

    之前已经提过两种转换,一是将一个datetime对象转换成其字符串表示;二是将其转换成为posix时间表示(即整数值)。现在我们来看看它的逆变换。 * strptime(date_string, format)

    dt.datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M") #不含时区
    dt.datetime.strptime('2018-12-07T22:29:30.187475+08:00', "%Y-%m-%dT%H:%M:%S.%f+08:00" ) #含时区
    # output is: datetime.datetime(2006, 11, 21, 16, 30)
    # output is: datetime.datetime(2018, 12, 7, 22, 29, 30, 187475)

    dateutil.parser.parse方法

    from dateutil import parser
    d1 = parser.parse('Tue Jun 22 12:10:20 2010 EST')
    d2 = parser.parse('2015-02-04T20:55:08.914461+00:00')
    print(d1, d1.tzinfo)
    print(d2, d2.tzinfo)
    2010-06-22 12:10:20 None
    2015-02-04 20:55:08.914461+00:00 tzutc()

    你可能会失望,解析结果d1并不包含时区信息。原因是EST指代的时区并不惟一。d2表明了parser可以很好地处理isoformat格式的时间。 * fromtimestamp(int) 用于将posix时间转换为datetime,当然转换出来的结果是不包含时区的。

    import datetime as dt
    import time
    dt.datetime.fromtimestamp(time.time())


    因为本篇文章strptime和python时间中的datetime结合,难度加大后比较难,小伙伴们可以遵循代码示例一一尝试。更多Python学习推荐:PyThon学习网教学中心

    专题推荐:python3时间
    上一篇:python3中有计算时间差的方法吗? 下一篇:怎么使用python脚本实现表格打印?

    相关文章推荐

    • python3时间中time是什么?怎么转换?• python3时间中datetime有哪些转换方式?• Python3时间戳如何在excel中运用?• python3时间datetime如何转换成数字?• datetime在python3时间中的特殊使用有哪些?• Python3时间戳如何应用于数学计算?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网