• time,datetime模块


    time

    import time
    

    为什么要有time模块,time模块有什么用

    • 打印时间,还可以打印三种格式的时间(虽然并没有什么卵用),需要时间的地方就可以调用,还有暂停程序进行的功能
    方法名 作用
    sleep() 重要 睡眠
    time() 时间戳
    strftime() 格式化时间
    localtime 重要 结构化时间

    时间戳形式

    print(time.time())     # python中是从1970年开始计算过去了多少秒
    
    1560155784.7340243
    

    格式化时间

    • 其中的格式需要自己定义
    • 可以自己选择合适的格式,便于进行处理
    print(time.strftime('%Y-%m-%d %X'))
    
    2019-06-10 16:37:53
    

    结构化时间

    • 以某个地区的时间为准
    print(time.localtime())  # 北京时间
    print(time.gmtime())     # 格林威治时间,第一台计算机,和北京时差为8h
    print(time.gmtime(0))    # 打印1970年的时间
    
    time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=16, tm_min=40, tm_sec=11, tm_wday=0, tm_yday=161, tm_isdst=0)
    time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=8, tm_min=40, tm_sec=11, tm_wday=0, tm_yday=161, tm_isdst=0)
    time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
    

    各种时间格式互相转换

    • 结构化时间转换为格式化时间
    struct_time = time.localtime()
    print(time.strftime('%Y-%m-%d', struct_time))
    
    2019-06-10
    
    • 结构化时间转化为时间戳
    print(time.mktime(struct_time))
    
    1560156103.0
    
    • 格式化时间转化为结构化时间
    format_time = time.strftime('%Y:%m:%d')
    print(time.strptime(format_time, '%Y:%m:%d'))
    
    time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=161, tm_isdst=-1)
    
    • 时间戳转化为结构化时间
    stamp_time = time.time()
    print(time.localtime(stamp_time))
    
    time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=16, tm_min=48, tm_sec=42, tm_wday=0, tm_yday=161, tm_isdst=0)
    
    • 睡眠(重要)
    time.sleep(2)
    

    datetime

    import datetime
    

    为什么要有datetime模块,detatime模块有什么用

    • 时间的加减
    • 这个方法可以替代上面的time模块,因为time模块的三种模式,只有一种用的到,就是datetime的这种

    datetime.now() 重要

    • 获取时间
    • 固定格式,可以用split把后面的时间进行切割处理
    now = datetime.datetime.now()
    print(now)
    new = str(now).split()[0]
    print(new)
    
    2019-06-10 18:44:13.910789
    2019-06-10
    

    时间的计算

    • 默认加days,最高也只能是加days
    • 记住加s
    print(now + datetime.timedelta(5))
    print(now + datetime.timedelta(hours=3))
    print(now + datetime.timedelta(minutes=30))
    
    2019-06-15 18:44:13.910789
    2019-06-10 21:44:13.910789
    2019-06-10 19:14:13.910789
    

    替换时间

    print(now.replace(year=2017, month=6, day=4, hour=10, minute=0, second=0))
    
    2017-06-04 10:00:00.910789
  • 相关阅读:
    [硬件]_ELVE_VS2015下opencv3.3的配置问题
    [Linux]_ELVE_ssh登录远程阿里服务器
    [python]_ELVE_pip2和pip3如何共存
    U盘无法打开提示格式化?如何进行恢复
    [转]pycharm的一些快捷键
    文件上传Django
    ansible编译安装--操作系统环境Redhat6.4
    django的models字段介绍
    paramiko模块
    mysql安装等操作
  • 原文地址:https://www.cnblogs.com/lucky75/p/10999898.html
Copyright © 2020-2023  润新知