• 标准库


    一、对日期、时间、时间戳的处理

    1、datetime 类

    类方法

    • today() 返回本地时区当前时间的 datetime 对象
    • now(tz=None) 返回当前时间的 datetime 对象,时间到微秒 如果 tz 等于 None 返回和 today() 一样
    • utcnow() 没有时区的当前时间
    • fromtimestamp(timestamp, tz=None) 从一个时间戳返回一个 datetime 对象

    2、datetime 对象

    • timestamp() 返回一个到微妙的时间戳

      • 时间戳: 格林威治时间 1970年到1月1日0点 到现在的秒数
    • 构造方法, datetime.datetime(2016, 12, 6, 16, 29, 43, 79043)

    • year、month、day、hour、minute、secound、microsecond, 取 datetime 对象的年月日时分秒及微妙

      • weekday() 返回星期的天, 周一 0, 周日 6
      • isoweekday() 返回星期的天,周一 1, 周日 7
      • date() 返回日期 date 对象
      • time() 返回时间 time 对象
      • replace() 修改并返回新的时间
      • isocalendar() 返回 一个三元组 (年,周数,周的天) --- 日历的使用

    3、日期格式化

    • 类方法 strptime(date_string, format), 返回 datetime 对象
    • 对象方法 strftime(format), 返回字符串
    • 字符串 format 函数格式化
     import datetime
    
     dt = datetime.datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M")
    
     print(dt.strftime("%Y-%m-%d %H:%M:%S"))
     print("{0:%Y}-{0:%m}-{0:%d} {0:%H}:{0:%M}:{0:%S}".format(dt))
    
    
    • timedelta 对象
    • 构造方法
    • datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0) ---> 返回一个 timedelta 使用时间对象,可以和datetime对象相加减
    • total_seconds() 返回时间差的总秒数
    from datetime import datetime, timedelta
    
    nowtime = datetime(year=2019, month=10, day=1, hour=12, minute=15)
    print(nowtime)  # 2019-10-01 12:15:00
    
    new_time = nowtime + timedelta(days=3, hours=0.5)
    print(new_time) # 2019-10-04 12:45:00   # 时间差,3天零30分钟
    
    delta = (new_time - nowtime).total_seconds()
    print(delta)    # 261000.0  差值秒数
    
  • 相关阅读:
    lightoj1140_数位dp
    lightoj1057_状压dp
    lightoj1068_数位dp
    lightoj1018_状压dp
    lightoj1217_简单dp
    lightoj1119_简单状压dp
    lightoj1037_状压dp
    lightoj1110_LCS并输出
    图论算法----最短路
    poj1182 食物链
  • 原文地址:https://www.cnblogs.com/jingru-QAQ/p/11413100.html
Copyright © 2020-2023  润新知