zoukankan      html  css  js  c++  java
  • Python时间系统

    Python的time和datetime模块提供了时间日期工具, python中的时间有4种表示方式:

    • datetime obj

    • time obj/tuple

    • posix timestamp

    • timestring

    datetime

    获得当前时间:

    >>> import datetime
    >>> datetime.datetime.now()
    datetime.datetime(2016, 8, 21, 16, 21, 51, 631199)
    

    创建datetime对象:

    >>> d = datetime.datetime(year=2016, month=1, day=1, hour=12, minute=0, second=0)
    >>> d
    datetime.datetime(2016, 1, 1, 12, 0)
    >>> d.year
    2016
    

    datetime是不可变对象, 若要修改时间需要建立新的datetime对象.

    但是datetime可以相减,比较或加减timedelta:

    >>> datetime.datetime.now() - d
    datetime.timedelta(233, 16611, 887646)
    >>> datetime.datetime.now() < d
    False
    >>> datetime.datetime.now() + datetime.timedelta(1)
    datetime.datetime(2016, 8, 22, 16, 38, 30, 306021)
    

    转换为time tuple:

    >>> d.timetuple()
    time.struct_time(tm_year=2016, tm_mon=1, tm_mday=1, tm_hour=12, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=-1)
    

    通过time tuple转换为时间戳:

    >>> time.mktime(datetime.datetime.now().timetuple())
    1471777789.0
    

    格式化为时间字符串:

    >>> datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S %f')
    '2016-08-21 16:46:20 634139'
    

    time

    获得当前时间:

    >>> import time
    >>> time.localtime()
    time.struct_time(tm_year=2016, tm_mon=8, tm_mday=21, tm_hour=16, tm_min=48, tm_sec=24, tm_wday=6, tm_yday=234, tm_isdst=0)
    

    转换为datetime:

    >>> datetime.datetime(*time.localtime()[0:6])
    datetime.datetime(2016, 8, 21, 16, 56, 16)
    

    格式化为时间字符串:

    >>> time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
    '2016-08-21 16:55:01'
    

    转换为时间戳:

    >>> time.mktime(time.localtime())
    1471770256.0
    

    时间戳

    UNIX时间戳定义为1970-1-1 00:00:00开始的秒数, 获得当前时间戳:

    >>> import time
    >>> time.time()
    1471777412.3293073
    

    转换为datetime:

    >>> datetime.datetime.fromtimestamp(time.time())
    datetime.datetime(2016, 8, 21, 19, 8, 22, 719951)
    

    转换为timetuple:

    >>> time.localtime(time.time())
    time.struct_time(tm_year=2016, tm_mon=8, tm_mday=21, tm_hour=19, tm_min=13, tm_sec=41, tm_wday=6, tm_yday=234, tm_isdst=0)
  • 相关阅读:
    012_py之证书过期监测及域名使用的py列表的并集差集交集
    一些java的书籍
    java之内的工具分享,附带下载链接,方便以后自己寻找
    javascript的 == 与 === 的区别
    论httpclient上传带参数【commons-httpclient和apache httpclient区别】
    java操作小技巧,遇到过的会一直更新,方便查找
    常用jsp include用法,三种include的区别
    mybatis中的#和$的区别
    单例模式
    jQuery获取Select选择的Text和 Value(转)用时比较方便寻找
  • 原文地址:https://www.cnblogs.com/Finley/p/5793305.html
Copyright © 2011-2022 走看看