zoukankan      html  css  js  c++  java
  • python模块-datetime模块

     上面一篇已经讲了time模块,再来学习datetime模块。

     

    datetime主要有datetime、timedelta、time、date这4个子模块。

    a、datetime常用的函数(datetime对象)

    1、获取当前时间:结果为struct_time

    >>> a=datetime.datetime.now()
    >>> print a.year,a.hour,a.minute
    2017 15 58
    

    2、获取当天时间:结果为struct_time

    >>> datetime.datetime.today()
    datetime.datetime(2017, 9, 23, 16, 1, 34, 637868)
    

    3、格式化时间戳,结果为struct_time

    >>> datetime.datetime.fromtimestamp(time.time())
    datetime.datetime(2017, 9, 23, 16, 3, 26, 926928)
    

    4、datetime.datetime.strftime():结果为string_time

    >>> datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    '2017-09-23 16:10:05'
    

    5、datetime.datetime.strptime(),结果为struct_time

    >>> datetime.datetime.now().strptime('2016-10-11','%Y-%m-%d')
    datetime.datetime(2016, 10, 11, 0, 0)
    

    6、datetime的所有函数

    >>> dt=datetime.datetime.now()
    >>> dt.weekday()
    5
    >>> dt.
     dt.combine(           dt.min                dt.toordinal(
     dt.ctime(             dt.minute             dt.tzinfo
     dt.date(              dt.month              dt.tzname(
     dt.day                dt.now(               dt.utcfromtimestamp(
     dt.dst(               dt.replace(           dt.utcnow(
     dt.fromordinal(       dt.resolution         dt.utcoffset(
     dt.fromtimestamp(     dt.second             dt.utctimetuple(
     dt.hour               dt.strftime(          dt.weekday(
     dt.isocalendar(       dt.strptime(          dt.year
     dt.isoformat(         dt.time(              
     dt.isoweekday(        dt.timetuple(         
     dt.max                dt.timetz(            
     dt.astimezone(        dt.microsecond        dt.today(     
    

      

    b、timedelta,时间段,可以用来获取将来或过去某个时间

    timedelta是一个时间段,不是表示一个时间点。所以我们可以把时间段用来加减操作。

    比如:获取当天此时,明天此时,昨天此时,上周同一时刻

    >>> datetime.datetime.now() + datetime.timedelta(days=0)
    datetime.datetime(2017, 9, 23, 16, 21, 50, 308900)
    >>> datetime.datetime.now() + datetime.timedelta(days=1)
    datetime.datetime(2017, 9, 24, 16, 21, 57, 788849)
    >>> datetime.datetime.now() + datetime.timedelta(days=-1)
    datetime.datetime(2017, 9, 22, 16, 21, 59, 829977)
    >>> datetime.datetime.now() + datetime.timedelta(days=-7)
    datetime.datetime(2017, 9, 16, 16, 24, 41, 5906)
    >>> 
    

     

    可以通过days、hours、minutes、seconds、microseconds指定天、时、分、秒、微妙来获取将来或过去的某个时间点。

    >>> datetime.datetime.now() + datetime.timedelta(days=0)
    datetime.datetime(2017, 9, 23, 16, 32, 56, 16910)
    >>> datetime.datetime.now() + datetime.timedelta(days=-1,hours=1,seconds=10,minutes=2,microseconds=10)
    datetime.datetime(2017, 9, 22, 17, 35, 7, 392881)
    >>> datetime.datetime.now() + datetime.timedelta(days=1,hours=1,seconds=10,minutes=2,microseconds=10)
    datetime.datetime(2017, 9, 24, 17, 35, 10, 857056)
    >>> 
    

      

    c、date,生成一个日期对象,参数为:年、月、日

    date(year, month, day) --> date object

    >>> datetime.date(2017,9,23)
    datetime.date(2017, 9, 23)
    

      

    d、time,生成一个时间对象,参数为:时、分、秒、微妙

    time([hour[, minute[, second[, microsecond[, tzinfo]]]]]) --> a time object

    >>> datetime.time(16,11,11,11)
    datetime.time(16, 11, 11, 11)
    

      

     

      

      

  • 相关阅读:

    链表
    Codeforces 1290A/1291C
    Codeforces 1291B
    Codeforces 1291A
    Codeforces 1295C
    Codeforces 1295B
    ZJNU 2356
    ZJNU 2354
    ZJNU 2353
  • 原文地址:https://www.cnblogs.com/skyflask/p/7581398.html
Copyright © 2011-2022 走看看