zoukankan      html  css  js  c++  java
  • python时间操作总结

    Unix时间戳

    Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类Unix系统中,也在许多其他操作系统中被广告采用。

    目前相当一部分操作系统使用32位二进制数字表示时间。此类系统的Unix时间戳最多可以使用到格林威治时间2038年01月19日03时14分07秒(二进制:01111111 11111111 11111111 11111111)。其后一秒,二进制数字会变为10000000 00000000 00000000 00000000,发生溢出错误,造成系统将时间误解为1901年12月13日20时45分52秒。这很可能会引起软件故障,甚至是系统瘫痪。使用64位二进制数字表示时间的系统(最多可以使用到格林威治时间292,277,026,596年12月04日15时30分08秒)则基本不会遇到这类溢出问题。

    python中时间戳的使用

    import time
    import datetime
    
    #获取当前时间戳
    time.time()
    #返回时间戳1470733760.613
    
    #获取localtime
    time.localtime()
    #time.struct_time(tm_year=2016, tm_mon=8, tm_mday=9, tm_hour=17, tm_min=11, tm_sec=13, tm_wday=1, tm_yday=222, tm_isdst=0)
    
    #上面的时间格式不好看,定义一个时间格式
    ISOTIMEFORMAT='%Y-%m-%d %X'
    #使用strftime做转换
    a = time.strftime( ISOTIMEFORMAT, time.localtime() )
    #返回'2016-08-09 17:15:27'
    
    #将'2016-08-09 17:15:27'转化为时间戳
    time.mktime(time.strptime(a,ISOTIMEFORMAT))
    #1470734127.0
    
    #将时间戳转化为localtime
    b = time.localtime(1470734127.0)
    time.strftime(ISOTIMEFORMAT, b)
    
    #获取当前时间的前三天的时间戳
    time.mktime((datetime.datetime.now() - datetime.timedelta(days = 3)).timetuple())
    
    #获取今日的零点时间戳
    now = time.time()
    c = now - (now % 86400) + time.timezone

    #获取当前日期
    date = datetime.datetime.now().strftime("%Y-%m-%d")
    #获取当前时间的前n天
    date_n = (datetime.datetime.now()-datetime.timedelta(days=n)).strftime("%Y-%m-%d")
  • 相关阅读:
    短信验证倒计时60s
    jquery select省市区三级联动
    C# 遍历文本框
    html formData 数据 提交和 .netMVC接收
    jq遍历table 下的 td 添加类
    jq 替换DOM layeui 不刷新
    jq 获取表单所有数据
    js 二级联动
    MVC 下载文件
    MVC 上传文件
  • 原文地址:https://www.cnblogs.com/zoro-robin/p/5754049.html
Copyright © 2011-2022 走看看