zoukankan      html  css  js  c++  java
  • python时间转换

    1.时间戳转换为时间

    from datetime import datetime
    timeStamp = 1381419600
    dateArray = datetime.utcfromtimestamp(timeStamp)
    dateArray1 = datetime.fromtimestamp(timeStamp)
    print(dateArray1)
    #2013-10-10 23:40:00
    print(dateArray)
    #2013-10-10 15:40:00
    print(type(dateArray))
    #<class 'datetime.datetime'>
    otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
    print(otherStyleTime)
    #2013-10-10 15:40:00
    print(type(otherStyleTime))
    #<class 'str'>

    2.在使用xlrd读取Excel表格中的日期格式时,读出的内容和原来Excel表格中的内容不一致。读取出来的是一个浮点数。导致不能正确使用。而xldate_as_tuple方法可以很好地解决这个问题。 

    import xlrd
    from xlrd import xldate_as_tuple
    
    #打开原表
    data = xlrd.open_workbook('test.xlsx')
    table = data.sheets()[0]
    
    pickupTimePhasetime = xldate_as_tuple(table.cell_value(0,0),0)
    print(pickupTimePhasetime)
    #(2021, 1, 7, 12, 23, 0),类型 tuple
    
    
    pickupTimePhase = str(pickupTimePhasetime[0]) + '-' + str(pickupTimePhasetime[1]) + '-' + str(
        pickupTimePhasetime[2]) + ' ' + str(pickupTimePhasetime[3]) + ':' + str(pickupTimePhasetime[4]) + ':' + str(
        pickupTimePhasetime[5])
    print(pickupTimePhase)
    #2021-1-7 12:23:0,类型 str

    3.日期转换为时间戳 

    import time
    
    # 字符类型的时间
    tss1 = '2013-10-10 23:40:00'
    # 转为时间数组
    timeArray = time.strptime(tss1,"%Y-%m-%d %H:%M:%S")
    print(timeArray)
    print(type(timeArray))  #<class 'time.struct_time'>
    # timeArray可以调用tm_year等
    print(timeArray.tm_year)  # 2013
    # 转为时间戳
    timeStamp = int(time.mktime(timeArray))
    print(timeStamp) # 1381419600
    #转换为毫秒
    print(timeStamp*1000)  
    #1381419600000

     4.比较大小,通过time模块可以直接比较大小,也可以通过时间戳比较大小

    import time
    # 字符类型的时间
    tss1 = '2013-10-10 23:40:00'
    # 转为时间数组
    timeArray1 = time.strptime(tss1,"%Y-%m-%d %H:%M:%S")
    # 转为时间戳
    timeStamp1 = int(time.mktime(timeArray1))
    #print(timeStamp1) # 1381419600
    
    tss2 = '2013-10-11 23:40:00'
    timeArray2 = time.strptime(tss2,"%Y-%m-%d %H:%M:%S")
    timeStamp2 = int(time.mktime(timeArray2))
    #print(timeStamp2) # 1381506000
    
    #time模块可以直接比较大小
    if timeArray1 < timeArray2:
        print("通过时间模块判断PASS")
    
    #通过时间戳比较大小
    if timeStamp1 < timeStamp2:
        print("通过时间戳判断PASS")
  • 相关阅读:
    基于接口的动态代理和基于子类的动态代理
    JDBC连接数据库
    关于使用Binlog和canal来对MySQL的数据写入进行监控
    使用VMware12在CentOS7上部署docker实例
    VMWare12pro安装Centos 6.9教程
    读《Java并发编程的艺术》学习笔记(十)
    读《Java并发编程的艺术》学习笔记(九)
    读《Java并发编程的艺术》学习笔记(八)
    读《Java并发编程的艺术》学习笔记(七)
    读《Java并发编程的艺术》学习笔记(六)
  • 原文地址:https://www.cnblogs.com/like1824/p/14231350.html
Copyright © 2011-2022 走看看