zoukankan      html  css  js  c++  java
  • python 下字符串格式时间比较

    python 下有多个有关时间的模块,分别是time、datetime、calendar,今天重点讨论下time写法。

    其中time模块,主要有以下方法:

    ltime=time.time() 获取当前系统时间,返回float型数值时间戳(当前时间相对于1970.1.1 00:00:00以秒计算的偏移量);

    localtime=time.localtime(ltime) 把float型时间戳转变成当前时区struct time型时间(其实是一个数组);

    localtime=time.gmtime(ltime) 把float型时间戳转变成UTC时区struct time型时间(其实是一个数组);

    ltime= time.mktime(localtime)  把str uct time转成float型时间戳。

    strtime= time.strftime('%Y%m%d %H%M%S', localtime) ,localtime参数是struct time时间,返回字符串。

    localtime=time.strptime(strtime,'%Y%m%d %H%M%S') ,正好是strftime的反向操作,strtime参数字符串格式日期。

    举例,一个时间偏移后的比较情况:

     1 #-*-coding=utf-8-*-
     2 __author__='zhongtang'
     3 
     4 '''
     5 时间戳与字符串的互相转换
     6 '''
     7 
     8 import time
     9 
    10 localtime1=time.localtime()
    11 time.sleep(5)
    12 localtime2=time.localtime(time.time())
    13 
    14 print type(localtime1),localtime1
    15 print type(localtime2),localtime2
    16 
    17 gmtime=time.gmtime(time.time())
    18 print  type(gmtime),gmtime
    19 
    20 
    21 strtime1='20160518010101'
    22 strtime2='20160518020101'
    23 
    24 #字符串变成时间数据结构
    25 localtime1=time.strptime(strtime1,'%Y%m%d%H%M%S')
    26 localtime2=time.strptime(strtime2,'%Y%m%d%H%M%S')
    27 
    28 print type(localtime1),localtime1
    29 print type(localtime2),localtime2
    30 
    31 
    32 #从时间数据结构转换成时间戳
    33 time1= time.mktime(localtime1)
    34 time2= time.mktime(localtime2)
    35 
    36 print type(time1),time1
    37 print type(time2),time2
    38 
    39 #时间戳可以直接相减,得到以秒为单位的差额
    40 print time2-time1

    输出结果

    1 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=30, tm_wday=3, tm_yday=140, tm_isdst=0)
    2 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)
    3 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=1, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)
    4 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=1, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)
    5 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=2, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)
    6 <type 'float'> 1463504461.0
    7 <type 'float'> 1463508061.0
    8 3600.0
  • 相关阅读:
    R语言用神经网络改进Nelson-Siegel模型拟合收益率曲线分析
    用R语言用Nelson Siegel和线性插值模型对债券价格和收益率建模
    R语言LME4混合效应模型研究教师的受欢迎程度
    R语言Black Scholes和Cox-Ross-Rubinstein期权定价模型案例
    R语言中的Nelson-Siegel模型在汇率预测的应用
    R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归
    LNMP搭建
    php高性能开发阅读笔记
    php 关于经纬度距离计算方法
    在已经部署svn 服务器上,搭建svn项目 成功版
  • 原文地址:https://www.cnblogs.com/zhongtang/p/5507035.html
Copyright © 2011-2022 走看看