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)
    

      

     

      

      

  • 相关阅读:
    CSharpGL(26)在opengl中实现控件布局/渲染文字
    CSharpGL(25)一个用raycast实现体渲染VolumeRender的例子
    some OpenGL constants
    CSharpGL(24)用ComputeShader实现一个简单的图像边缘检测功能
    CSharpGL(23)用ComputeShader实现一个简单的ParticleSimulator
    CSharpGL(22)实现顺序无关的半透明渲染(Order-Independent-Transparency)
    CSharpGL(21)用鼠标拾取、拖拽VBO图元内的点、线或本身
    批量重命名文件
    [译]基于GPU的体渲染高级技术之raycasting算法
    CSharpGL(20)用unProject和Project实现鼠标拖拽图元
  • 原文地址:https://www.cnblogs.com/skyflask/p/7581398.html
Copyright © 2011-2022 走看看