zoukankan      html  css  js  c++  java
  • datetime

     

    datetime模块

    In [2]:
    import datetime
    # datetime模块提供对于日期和时间进行简单或复杂的操作. datetime 模块提供了一下的可用类型(Available Types).
    # datetime.MINYEAR 和 datetime.MAXYEAR 模块常量表示datetime接受的范围
    
    In [3]:
    # class datetime.datetime: 日期和时间的组合.提供year, month, day, hour, minute, second, microsecond, tzinfo.
    # class datetime.date: 一个理想化的日期, 提供year, month, day属性
    # class datetime.time: 一个理想化的时间, 提供hour, minute, second, microsecond, tzinfo.
    # class datetime.timedelta: 表达两个date,time和datetime持续时间内的微妙差异.
    # class datetime.tzinfo: 时区信息对象.
    
     

    datetime类

    In [4]:
    datetime.datetime.today()
    #  返回当前本地datetime.随着 tzinfo None. 这个等同于datetime.fromtimestamp(time.time()).
    
    Out[4]:
    datetime.datetime(2018, 3, 31, 8, 59, 40, 474283)
    In [6]:
    datetime.datetime.now()
    # 返回当前本地日期和时间, 如果可选参数tz为None或没有详细说明,这个方法会像today().
    
    Out[6]:
    datetime.datetime(2018, 3, 31, 9, 1, 15, 354123)
    In [7]:
    datetime.datetime.utcnow()
    # 返回当前的UTC日期和时间, 如果tzinfo None ,那么与now()类似.
    
    Out[7]:
    datetime.datetime(2018, 3, 31, 1, 1, 54, 651647)
    In [10]:
    import time
    datetime.datetime.fromtimestamp(time.time())
    # 根据时间戳返回本地的日期和时间.tz指定时区.
    
    Out[10]:
    datetime.datetime(2018, 3, 31, 9, 4, 8, 250942)
    In [11]:
    datetime.datetime.utcfromtimestamp(time.time())
    # 根据时间戳返回 UTC datetime.
    
    Out[11]:
    datetime.datetime(2018, 3, 31, 1, 5, 10, 777279)
    In [32]:
    a = datetime.datetime.now().date()
    b = datetime.datetime.now().time()
    datetime.datetime.combine(a,b)
    # 根据时间戳返回 UTC datetime.
    
    Out[32]:
    datetime.datetime(2018, 3, 31, 9, 42, 28, 795887)
    In [12]:
    datetime.datetime.strptime("2018年3月21日","%Y年%m月%d日")
    # 根据date_string和format返回一个datetime
    
    Out[12]:
    datetime.datetime(2018, 3, 21, 0, 0)
    In [13]:
    # 实例方法
    c = datetime.datetime.now()
    
    In [18]:
    c
    
    Out[18]:
    datetime.datetime(2018, 3, 31, 9, 9, 34, 745434)
    In [15]:
    c.date() # 返回相同年月日的date对象.
    
    Out[15]:
    datetime.date(2018, 3, 31)
    In [16]:
    c.time() # 返回相同时分秒微秒的time对象
    
    Out[16]:
    datetime.time(9, 9, 34, 745434)
    In [24]:
    c.replace(2017) # 替换指定字段生成新的对象
    
    Out[24]:
    datetime.datetime(2017, 3, 31, 9, 9, 34, 745434)
    In [20]:
    c.isoformat() # 返回符合ISO 8601标准 (YYYY-MM-DD) 的日期字符串
    
    Out[20]:
    '2018-03-31T09:09:34.745434'
    In [21]:
    c.isoweekday() # 返回符合ISO标准的指定日期所在的星期数(周一为1…周日为7) 
    
    Out[21]:
    6
    In [22]:
    c.weekday() # 周一为 0, 周日为 6 
    
    Out[22]:
    5
    In [23]:
    c.timetuple() # 兼容time.localtime(...)返回一个类型为time.struct_time的数组,
    
    Out[23]:
    time.struct_time(tm_year=2018, tm_mon=3, tm_mday=31, tm_hour=9, tm_min=9, tm_sec=34, tm_wday=5, tm_yday=90, tm_isdst=-1)
    In [29]:
    # 日期字符串的输出
    c.strftime("%Y-%m-%d %H-%M-%S")
    
    Out[29]:
    '2018-03-31 09-09-34'
    In [31]:
    c.ctime()
    
    Out[31]:
    'Sat Mar 31 09:09:34 2018'
    In [19]:
    # 实例属性
    # 年,    月,     日,  时,     分,     秒,        毫秒
    c.year,c.month,c.day,c.hour,c.minute,c.second,c.microsecond
    
    Out[19]:
    (2018, 3, 31, 9, 9, 34, 745434)
     

    date类和time类

    In [33]:
    # date对象由year年份、month月份及day日期三部分构成
    # time对象由hour时、minute分、second秒以及microsecond毫秒四部分构成
    
     

    timedelta类

    In [35]:
    # timedelta类是用来表示时间的差值的
    # days, seconds, microseconds, milliseconds, minutes, hours, weeks
    b = datetime.datetime.today()
    print(b)
    c = datetime.timedelta(days=8)
    print(b - c)
    
     
    2018-03-31 09:48:18.294290
    2018-03-23 09:48:18.294290
    
  • 相关阅读:
    [BJOI2015]树的同构 && 树哈希教程
    「HNOI2014」世界树
    CF613D Kingdom and its Cities
    「HEOI2014」大工程
    虚树教程
    [SDOI2011]消耗战
    CF1216E Numerical Sequence
    vim8.1安装
    luoguP5024 保卫王国
    动态DP教程
  • 原文地址:https://www.cnblogs.com/wwg945/p/8681068.html
Copyright © 2011-2022 走看看