【Python自学记】8.日期时间

  • Post author:
  • Post category:python




Python 日期处理



  • time模块


    • time函数

      调用time函数,返回当前的时间戳,返回的时间戳是以秒为单位的浮点数

      import time
      
      print(time.time()) #获取当前时间戳
      

    • localtime函数

      • 可传入一个可选参数,以秒为单位的时间戳

      • 传入参数,将时间戳格式化为本地时间,返回一个struct_time元组

      • 不传入参数,将当前时间戳格式化为本地时间,返回一个struct_time元组

      • Struct_time属性描述:

        属性 含义
        tm_year 年份 4位数字表示: 2020
        tm_mon 月份 1-12数字表示:12
        tm_mday 日期 1-31数字表示:5
        tm_hour 小时 0-23数字表示:12
        tm_min 分钟 0-59数字表示:30
        tm_sec 0-60数字表示:30
        tm_wday 一周的第几天 0-6数字表示,0表示周一:5
        tm_yday 一年的第几天 1-366数字表示:300
        tm_isdst 是否是夏令时 默认值为-1,0表示不是,1表示是
        import time
        
        date_time1 = time.localtime()
        print(date_time1)
        
        ts=time.time()
        date_time2=time.localtime(ts)
        print(date_time2)
        

    • strftime函数

      strftime(fmt[,struct_time])函数是可以按照自定义的格式化参数将时间格式化,fmt是函数入参的自定义格式化参数,struct_time可选,不传表示当前时间格式化

      • 时间格式化符号:

        格式化符号 含义
        %y 两位数的年份表示
        %Y 四位数的年份表示
        %m 月份
        %d 日期
        %H 24小时制小时数
        %I 12小时制小时数
        %M 分钟数
        %S
        %a 本地简化星期名称
        %A 本地完整星期名称
        %b 本地简化的月份名称
        %B 本地完整的月份名称
        %c 本地相应的日期表示和时间表示
        %j 一年内的第几天
        %p 显示本地时间的AM或PM
        %U 一年中的第几周
        %w 星期(0-6)0表示星期日
        %W 一年中的星期数:星期一是一个星期的开始
        %x 本地日期表示 20/12/5
        %X 本地时间表示:10:10:10
        %Z 当前时区的名称
        import time
        #默认格式化当前时间
        print(time.strftime('当前时间:%Y-%m-%d %H:%M:%S'))
        #指定时间格式化
        print(time.strftime('指定时间:%Y-%m-%d %H:%M:%S',time.localtime(1591545600000)))
        

    • strptime函数

      strptime(date_time,format)函数可以将一个格式化的时间字符串转换为struct_time元组

      print(time.strptime("2020-12-03 10:00:00","%Y-%m-%d %H:%M:%S"))
      

    • mktime函数

      mktime(tuple)函数可以将一个时间元组转换为一个浮点型时间戳

      print(time.mktime(time.localtime()))
      

    • sleep函数

      sleep(seconds)函数可以让程序暂停运行,睡眠等待,传入参数以秒为单位

      for i in range(3,-1,-1):
        print('倒计时:',i)
        if i !=0:
          time.sleep(1)
        else:
          print('Go!')
      


  • datetime模块

    datetime模块丰富的日期和时间处理相关函数,比time模块更加高级


    • now方法

      now()方法是指获取当前时间,默认返回格式是:YYYY-MM-DD HH:MM:SS.mmmmmm

      import datetime
      import time
      
      #获取当前时间
      date = datetime.datetime.now()
      print(date)
      
      print('year:',date.year)
      print('month:',date.month)
      print('day:',date.day)
      print('hour:',date.hour)
      print('minute:',date.minute)
      print('second:',date.second)
      

    • strftime方法

      strftime(fmt)方法是按照自定义的格式化对日期和时间进行格式化,fmt是格式化符号

      date = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
      print('自定义格式:',date)
      

    • fromtimestamp方法

      fromtimestamp(timestamp)方法是将时间戳timestamp以日期的形式进行格式化,默认返回格式是:YYYY-MM-DD HH:MM:SS.mmmmmm

      #默认格式
      print(datetime.datetime.fromtimestamp(time.time()))
      #自定义格式
      print(datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S'))
      

    • timedelta类

      timedelta类是datetime模块内置的时间间隔类,可以通过传入参数,days,hours,minutes,seconds,milliseconds,microseconds,weeks 的值来创建指定时间间隔对象

      today = datetime.datetime.today()
      print("今天:",today.strftime('%Y-%m-%d'))
      
      days = datetime.timedelta(days=2)
      
      print("后天:",(today+days).strftime('%Y-%m-%d'))
      


  • 当才华还配不上野心,就静下来学习

  • blog地址:hangzhi.site



版权声明:本文为Yuan_Hang723原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。