zoukankan      html  css  js  c++  java
  • time和datetime模块

    time模块:

    Timestamp:计算机中时间是由数字表示的。将1970.1.1  00:00:00 UTC+00:00时区的时刻称为epoch time,记为0(1970年以前的timestamp为负数),当前的时间就是相对                        于epoch time的秒数,称为timestamp。

    In [109]: time.time()
    Out[109]: 1510054096.087551

    struct time:time.gmtime([secs]) 返回UTC时间,dst=0,secs默认为当前时间戳

            time.localtime([secs])返回本地时间UTC+8,dst=0,secs默认为当前时间戳

    In [108]: time.gmtime()
    Out[108]: time.struct_time(tm_year=2017, tm_mon=11, tm_mday=7, tm_hour=11, tm_min=26, tm_sec=3, tm_wday=1, tm_yday=311, tm_isdst=0)
    In [107]: time.localtime()
    Out[107]: time.struct_time(tm_year=2017, tm_mon=11, tm_mday=7, tm_hour=19, tm_min=25, tm_sec=52, tm_wday=1, tm_yday=311, tm_isdst=0)

    mktime(tuple) -> floating point number

    In [113]: t=time.localtime()
    In [115]: time.mktime(t)
    Out[115]: 1510054321.0

    time.ctime([secs])返回本地时间,secs默认为time.time()

    time.asctime([t])将表示由gmtime()localtime()返回的时间的元组或struct_time转换为以下形式字符串 。若未提供t,则使用localtime()返回的当前时间。

    In [104]: time.ctime()
    Out[104]: 'Tue Nov  7 19:08:51 2017'
    
    In [105]: time.asctime()
    Out[105]: 'Tue Nov  7 19:08:56 2017'

    time.strftime(format[, t])gmtime()localtime()返回的时间元组或struct_time转为由格式指定的字符串参数。若未提供t,用localtime()返回的当前时间。格式必须是字符串。

    time.strptime(string[, format])根据格式解析表示时间的字符串。返回值是由gmtime()localtime()返回的struct_time

    In [116]: time.strftime('%Y-%m-%d')
    Out[116]: '2017-11-07'
    
    In [117]: time.strptime('2017-11-07','%Y-%m-%d')
    Out[117]: time.struct_time(tm_year=2017, tm_mon=11, tm_mday=7, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=311, tm_isdst=-1)

    time.sleep(secs)延迟

    附表:

    datetime模块:

    获取当前日期及时间:

    In [118]: from datetime import datetime
    In [119]: now = datetime.now()
    
    In [121]: print(now)
    2017-11-07 20:06:04.360664

      In [123]: print(type(now))
      <class 'datetime.datetime'>

    获取指定日期及时间:

    In [124]: dt = datetime(2017,11,4,7,20,30)
    In [125]: print(dt)
    2017-11-04 07:20:30

    datetime-->timestamp:

    In [126]: dt.timestamp()
    Out[126]: 1509751230.0

    timestamp-->datetime:

    In [127]: t=1490001234.0
    In [128]: print(datetime.fromtimestamp(t))        #本地时间
    2017-03-20 17:13:54
    
    In [129]: print(datetime.utcfromtimestamp(t))     #UTC时间
    2017-03-20 09:13:54

    str-->datetime:

    In [130]: cday = datetime.strptime('2017-6-4 15:30:45','%Y-%m-%d %H:%M:%S')
    
    In [131]: print(cday,type(cday))
    2017-06-04 15:30:45 <class 'datetime.datetime'>

    datetime-->str:

    In [132]: print(now.strftime('%a, %b %d %H:%M'))
    Tue, Nov 07 20:06

    datetime加减:

    In [133]: from datetime import timedelta
    
    In [134]: now = datetime.now()
    
    In [135]: now
    Out[135]: datetime.datetime(2017, 11, 7, 20, 36, 8, 36987)
    
    In [136]: now + timedelta(hours=10)
    Out[136]: datetime.datetime(2017, 11, 8, 6, 36, 8, 36987)
    
    In [137]: now + timedelta(days=1)
    Out[137]: datetime.datetime(2017, 11, 8, 20, 36, 8, 36987)
    
    In [138]: now - timedelta(days=3,hours=14)
    Out[138]: datetime.datetime(2017, 11, 4, 6, 36, 8, 36987)
    渐变 --> 突变
  • 相关阅读:
    创建数据库表
    Pod Preset玩转K8S容器时区自动配置
    CentOS7 CPU 降频问题
    Kafka Offset Monitor页面显示空白
    zabbix监控kafka消费
    istio-禁用/允许sidecar设置
    Istio 1.1部署实践
    etcd磁盘清理步骤
    Kubernetes 集群中使用 Helm 搭建 Spinnaker
    利用Spinnaker创建持续交付流水线
  • 原文地址:https://www.cnblogs.com/lybpy/p/7800984.html
Copyright © 2011-2022 走看看