• 简述模块-time


    一、在Python中表示时间的三种方式:

    1. 时间戳

    2. 格式化的时间字符串

    3.元组(struct_time)共九个元素

    二、定义

    时间戳:从1970-01-01 00:00:00开始按秒计算的偏移量,运行后返回的是float类型:

    import time
    print(time.time())
    
    # 1546420789.5867143  # 系统时间

    元组方式:struct_time元组共有9个元素,返回struct_time的函数主要有gmtime(), localtime(), strptime()。


    三、time模块的方法:

    • time.localtime([secs]):将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准。
    # 结构化时间
    import time
    print(time.localtime())
    
    # time.struct_time(tm_year=2019, tm_mon=1, tm_mday=2, tm_hour=18, tm_min=53, tm_sec=59, tm_wday=2, tm_yday=2, tm_isdst=0)
    • time.gmtime([secs]):和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。
    • time.time():返回当前时间的时间戳。
    • time.mktime(t):将一个struct_time转化为时间戳。
    • time.sleep(secs):线程推迟指定的时间运行。单位为秒。
    • time.asctime([t]):把一个表示时间的元组或者struct_time表示为这种形式:"Sun Oct 1 12:04:38 2017"。如果没有参数,将会将time.localtime()作为参数传入。
    • time.ctime([secs]):把一个时间戳(按秒计算的浮点数)转化为time.asctime()的形式。如果参数未给或者为None的时候,将会默认time.time()为参数。它的作用相当于time.asctime(time.locatime(secs))。
    • time.strftime(format[, t]):把一个代表时间的元组或者struct_time(如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()。
    # 格式化时间
    import time
    print(time.strftime("%Y-%m-%d %H:%M:%S"))  # 用来显示的
    
    # 2019-01-02 17:51:19
    • time.strptime(string[, format]):把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。

    四、日期格式化的标准

    %y 两位数的年份表示(00-99)
    %Y 四位数的年份表示(000-9999)
    %m 月份(01-12)
    %d 月内中的一天(0-31)
    %H 24小时制小时数(0-23)
    %I 12小时制小时数(01-12)
    %M 分钟数(00=59)
    %S 秒(00-59)
    %a 本地简化星期名称
    %A 本地完整星期名称
    %b 本地简化的月份名称
    %B 本地完整的月份名称
    %c 本地相应的日期表示和时间表示
    %j 年内的一天(001-366)
    %p 本地A.M.或P.M.的等价符
    %U 一年中的星期数(00-53)星期天为星期的开始
    %w 星期(0-6),星期天为星期的开始
    %W 一年中的星期数(00-53)星期一为星期的开始
    %x 本地相应的日期表示
    %X 本地相应的时间表示
    %Z 当前时区的名称
    %% %号本身

    五、将数据库中存储的数据转化成格式化时间

    import time
    a = 888888888   # 数据库中存储的数字,转化成格式化时间
    t = time.localtime(a) # 先把这个时间戳转化成python中的结构化时间
    print(t)
    
    # time.struct_time(tm_year=1998, tm_mon=3, tm_mday=3, tm_hour=9, tm_min=34, tm_sec=48, tm_wday=1, tm_yday=62, tm_isdst=0)
    # 把一个结构化时间转化成格式化时间
    s = time.strftime("%Y-%m-%d %H:%M:%S", t)
    print(s)
    
    # 1998-03-03 09:34:48

    反过来:

    import time
    # 让用户输入一个时间,把这个时间转化成时间戳
    user_input = input("请输入一个时间:")
    # 把用户输入的字符串转化成结构化时间
    struct_time = time.strptime(user_input, "%Y-%m-%d %H:%M:%S")
    # 转化成时间戳
    num = time.mktime(struct_time)
    print(num)
    
    # 请输入一个时间:2008-08-08 20:00:00
    1218196800.0
  • 相关阅读:
    深入理解javascript原型和闭包(1)——一切都是对象
    深入理解javascript原型和闭包(2)——函数与对象的关系
    js 的function为什么可以添加属性
    Nodejs入门
    js数组的比较
    对Array.prototype.slice.call()方法的理解
    elementUI el-select 多选情况下包含全部选项,及获得选中项的label
    JS对象,获取key和value
    elementUI实现前端分页
    JavaScript(js)处理的HTML事件、键盘事件、鼠标事件
  • 原文地址:https://www.cnblogs.com/wangzhilong/p/10210771.html
Copyright © 2020-2023  润新知