美文网首页python自学python基础库使用
python时间戳和日期的转换

python时间戳和日期的转换

作者: 渔父歌 | 来源:发表于2018-10-12 22:14 被阅读5次

    time库相关方法

    • struct_time:time库定义的时间类型,包含一个 9元元组,其中 tm_isdist 表示是否为闰年。例如:
    time.struct_time(tm_year=2018, tm_mon=10, tm_mday=12, tm_hour=13, tm_min=51, tm_sec=29, tm_wday=4, tm_yday=285, tm_isdst=0)
    
    • time.gmtime([secs]):接受一个时间戳,返回 UTC标准的 struct_time 。没有传入时间戳则以当前时间的时间戳为参数。
    • time.localtime([secs]) :与 time.gmtime([secs])相似,不过返回的是以当前时区为标准的 struct_time
    • time.mktime(t):接受一个 struct_time类型的变量,返回变量对应的时间戳。
    • time.sleep(secs):阻塞程序 secs秒。
    • time.strftime(format[, t]):接受一个 struct_time类型的变量,返回 format指定格式的时间。没有传入 struct_time参数,则默认以当前时间作为参数。
    • time.strptime(string[,format]):接受一个时间字符串,根据给定的 format将其转换为 struct_time类型并返回。如果 format与给定的字符串不匹配,会报 ValueError错误。
    • time.time():返回当前时间的时间戳。

    应用:时间戳与格式化日期的相互转换

    import time
    
    
    def strftime(timestamp, format_string='%Y-%m-%d %H:%M:%S'):
        return time.strftime(format_string, time.localtime(timestamp))
    
    def strptime(string, format_string='%Y-%m-%d %H:%M:%S'):
        return time.mktime(time.strptime(string, format_string))
    
    
    print(strftime(time.time()))
    
    print(strptime('2018-10-11 15:08:24'))
    

    format控制字符

    控制字符 含义
    %a 当地星期名缩写
    %A 当地星期名全写
    %b 当地月份名缩写
    %B 当地月份名全写
    %c 标准化输出,类似:Fri Oct 12 22:01:11 2018
    %d 日期数字,0到 31
    %H 24小时制小时
    %I 12小时制小时
    %j 日期在一年中是第多少天,例如 299
    %m 月份数字
    %M 分钟数字
    %p 显示 AM或 PM
    %S 秒数数字
    %U 一年中第几周(以周日为一周第一天计算,0到 53)
    %w 一周中第几天,0到 6
    %W 一年中第几周(以周一为一周第一天计算,0到 53)
    %x 当地日期,格式为 10/12/18
    %X 当地 时间,格式为 22:10:01
    %y 年份后两位,如 2018年就是 18
    %Y 年份全写,如 2018年就是 2018

    相关文章

      网友评论

        本文标题:python时间戳和日期的转换

        本文链接:https://www.haomeiwen.com/subject/ilhnaftx.html