free
Python中strptime()和strftime()的区别和用法
  • 首页 > 技术 > Python
  • 作者:free
  • 2022年8月22日 19:41 星期一
  • 浏览:1810
  • 字号:
  • 评论:0
  • 1.strptime中的p代表parse,意为解析,也就是将一个字符串解析成时间格式,什么是时间格式,下图为例

    import datetime
    strdate = '2020年6月23日 12:12:08'
    parsedate = datetime.datetime.strptime(strdate,'%Y年%m月%d日 %H:%M:%S')
    print(type(parsedate))   #输出:<class 'datetime.datetime'>
    print(parsedate)         #输出:2020-06-23 12:12:08
    formatedate = datetime.datetime.strftime(parsedate,'%Y%m%d')
    print(formatedate) #输出:20200623



    从这可以看出给定一个字符串’2020年6月23日 12:12:08’,datetime.datetime.strptime()需要传入两个参数,第一个是需要解析的字符串,第二个是需要转换成的时间格式(注意!这里的时间格式必须和字符串一致,否则会报错),不能写成

    strdate = '2020年6月23日 12:12:08'
    parsedate = datetime.datetime.strptime(strdate,'%Y年%m月%d日 %H:%M')  #错误写法会报错



    必须和需要解析的字符串格式完全一致。

    2.strftime()和strptime()的用法可以说是相反的,strftime()中的 ‘f’ 意为 format表示格式化
    就是将一个时间格式类型的数据格式化为一个字符串类型数据,上面代码中formatdate就是经过格式化之后的数据,将parserdate这个时间格式数据转化为字符串格式数据,(注意!这里同样需要传入两个参数,一个为需要格式化的时间格式对象parsedate,另外一个参数为你想要转化成的字符串格式,这里可以自定义。)
    strftime()还有另外一个常用的地方

    nowtime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    print(nowtime)               #输出:2021-05-12 15:02:16
    print(type(nowtime))         #输出:<class 'str'>



    我们获取当前时间,可以看到datetime.datetime.now()返回的是一个时间格式数据,再使用strftime的时候只需传入一个参数即可,最后我们打印时间格式为str。
      您阅读这篇文章共花了:  0小时00分02秒
     本文无需标签!
    二维码加载中...
    本文作者:free      文章标题: Python中strptime()和strftime()的区别和用法
    本文地址:https://renchuanchuan.com/?post=26
    版权声明:若无注明,本文皆为“RCC”原创,转载请保留文章出处。