• (6)time&datetime(时间模块)


    什么是时间模块

    就是处理时间相关的功能

    如用户注册的时间、统计程序运行的时间等

    time 模块 

    计算机中有三种时间

    1、时间戳

    从1970年到今天,这个时间段中间经历的秒数

    获取时间戳:time.time()

    通常用来做时间间隔计算的

    2、格式化的字符串形式

    time.strftime('%Y-%m-%d %H-%M-%S %p')  #括号里就是定义时间显示的格式

    time.strftime('%Y-%m-%d %X') #括号最后的大写X就是代表了时分秒的标准格式 

    通常用来给你看时间用的

    3、结构化的时间对象

    定向的获取时间的那个一个部分,比如只要获取小时,或者今天是一年中的第几天

    time.localtime() #用来获取本地区时间

    time.gmtime() #用来获取UTC时间(世界标准时间)

    PS:地球分很多个时区,时间对象就是用来获取本地时区的时间,比如上海就正好被划分进东8区的时间GMT+8:00 

     4、自带格式化的字符串时间

    time.asctime()

    5、时间延迟

    time.sleep() #括号内填写数字,就是延迟多少秒 

    三者之间的互转(看图)

    PS:由图可知时间戳不能直接转换成格式化的字符串时间,格式化的字符串时间也不能直接转换成时间戳

    例:三者之间的转换

    res = time.localtime(1232131332) #括号里填上时间戳转换成结构化的时间

    ret = time.strftime('%Y-%m-%d,res) #strftime有两个参数,一个时间的格式,第二个就是结构化的时间对象,转换成格式化的字符串时间

    rex = time.strptime(ret,'%Y-%m-%d) #strptime有两个参数,一个是格式化的字符串时间,第二个就是格式化的字符串时间的格式,转换成结构化的时间

    time.mktime(rex) #将结构化的时间转换成时间戳

    time模块的弊端

    1、时间格式是经常用到的,但是得自己写

    2、格式化字符串的时间不能和时间戳互转,必须通过结构化的时间进行中转

    针对time模块的弊端,datetime模块可以解决这个问题

    datetime模块

    datetime模块的优点

    import datetime

    datetime模块的三点好处:

    1. 获取格式化的字符串格式的时间比较方便

    print(datetime.datetime.now()) #一条指令直接获取格式化的时间

    2. 格式化的字符的时间可以与时间戳直接互转

    print(datetime.datetime.fromtimestamp(123123123)) #一条指令直接将时间戳转换成格式化字符串的时间

    3. 时间的加减操作方便

    print(datetime.datetime.now()+datetime.timedelta(hours=3)) #求三小时后的时间

    print(datetime.datetime.now()-datetime.timedelta(hours=3)) #求三小时前的时间

    print(datetime.datetime.now()+datetime.timedelta(hours=-3)) #求三天前的时间,这里前面是加号,在后面定义的时候可以加一个 - 号,也能求到三天前的时间

    print(datetime.datetime.now()+datetime.timedelta(weeks=3)) #求三星期后的时间

  • 相关阅读:
    nVelocity .NET的模板引擎(template engine) 转载
    NewWords/700800
    美剧字幕杀手之王第1季 第1集
    美剧字幕傲骨贤妻第1季 第1集
    NewWords/9001000
    示例代码控制设备背景代码
    算法把图像压缩成指定大小的代码
    获取和设置 iphone 屏幕亮度
    美剧字幕傲骨贤妻第1季 第2集
    NewWords/600700
  • 原文地址:https://www.cnblogs.com/shizhengquan/p/10073053.html
Copyright © 2020-2023  润新知