python时间模块time详解,python使用datetime库

  python时间模块time详解,python使用datetime库

  Yyds干货库存

  Python标准库datetime的时间模块详解。在上一篇博文中,我们学习了datetime库中的日期模块(date)。在本文中,我们将学习时间模块(time)。

  门户:点击跳转到日期模块。

  1.时间对象类

  主要处理时、分、秒。

  创建对象的常用参数是(小时、分钟、秒、微秒)

  创建的对象的函数是datetime.time()

  使用datetime.time()根据传递的参数创建一个对象,在没有传递参数时创建最小的时间对象。

  1小时=60分钟=3600秒=36000分钟=360000厘秒=360000毫秒=3600000微秒。

  1微秒=1000纳秒=100000皮秒

  2.检查极值

  #最长时间

  print(datetime . time . max)# 23:59:59.999999

  print(type(datetime . time . max))# class datetime . time

  #最短时间

  print(datetime . time . min)# 00:00:00

  print(type(datetime . time . min))# class datetime . time

  #时间对象之间的最小可分辨差异(1微秒)

  打印(datetime . time . resolution)# 0:00:00.000001

  print(type(datetime . time . resolution))# class datetime . time delta

  3.创建时间对象。

  创建对象函数datetime.time(小时、分钟、秒、微秒)

  参数从左到右依次为:时、分、秒、微秒。

  按位置传递参数时,必须保证参数值在规定范围内,顺序为时、分、秒、微秒。

  通过传递推荐的关键字参数来创建。

  print(datetime . time())# 00:00:00

  print(datetime . time(12))# 12:00:00

  print(datetime.time(12,2)) # 12:02:00

  print(datetime.time(12,2,54)) # 12:02:54

  print(datetime.time(12,2,54,999999)) # 12:02:54.999999

  传入一个关键字,根据传入的参数创建一个对象。

  print(datetime.time(微秒=99999)) # 00:00:00.099999

  print(datetime.time(微秒=99999,秒=8,小时=9,分钟=59)) # 09:59:08.099999

  4.时间替代函数

  时间替换功能:替换(自身,小时,分钟,秒,微秒)

  Self是必需的参数(datetime.time对象),小时、分钟、秒和微秒的参数是可选的。

  根据位置传输参数时,必须确保参数值在指定范围内。

  从左到右的顺序是:时、分、秒、微秒。

  4.1.缺少参数错误的示例

  # TypeError:未绑定的方法time.replace()需要一个参数

  打印(datetime.time.replace())

  4.2.参数值错误的示例

  my_time=datetime.time(微秒=99999,秒=8,小时=9,分钟=59)

  print(datetime . time . replace(my_time,25),my _ time)

  4.3.一般用法

  #时间替换

  #创建一个对象

  my_time=datetime.time(微秒=99999,秒=8,小时=9,分钟=59)

  #仅替换小时数

  print(datetime . time . replace(my _ time,hour=23),my _ time)# 23:59:08.099999 09:59:08.099999

  print(datetime . time . replace(my _ time,23),my _ time)# 23:59:08.099999 09:59:08.099999

  #仅分钟更换

  print(datetime . time . replace(my _ time,minute=23),my _ time)# 09:23:08.099999 09:59:08.099999

  #按位置传递参数以替换分钟。您必须传递两个位置参数,小时和分钟,否则您将被报告为语法错误。

  print(datetime . time . replace(my _ time,9,23),my _ time)# 09:23:08.099999 09:59:08.099999

  #仅替换秒数

  print(datetime . time . replace(my _ time,second=23),my _ time)# 09:59:23.099999 09:59:08.099999

  #同样,当按位置传递参数来替换秒时,必须传递三个位置参数:小时、分钟和秒。

  print(datetime . time . replace(my _ time,9,59,15),my _ time)# 09:59:15.099999 09:59:08.099999

  #只替换细微的数字

  print(datetime . time . replace(my _ time,微秒=23),my _ time)# 09:59:08.000023 09:59:08.099999

  #同样,在通过按位置传递参数来替换微妙的数字时,必须传递三个位置参数:小时、分钟、秒和微秒。

  print(datetime . time . replace(my _ time,9,59,8,23),my _ time)# 09:59:08.000023 09:59:08.099999

  5.时间对象的属性

  对象的属性(小时、分钟、秒、微秒)

  my_time=datetime.time(微秒=99999,秒=8,小时=9,分钟=59)

  #获取时间对象的属性(小时、分钟、秒、微秒)

  打印的小时(f {我的时间}是:{我的时间.小时}) # 09: 59: 08.09999是:9

  打印的分钟(f{my_time}是:{ my _ time . minute } )# 09:59:08.09999是:59。

  打印(f“{我的时间}中的秒数为:{我的时间。秒}) # 09:59:08.099999中的秒数为:8

  打印(f“{我的时间}中的微秒为:{我的时间。微秒}) # 09:59:08.099999中的微秒为:99999

  # 结合时间对象属性,我们就可以按位置传参进行单个属性的替换了

  打印(日期时间。时间。替换(我的时间,我的时间.小时,我的时间.分钟,我的时间.秒,23)) # 09:59:08.000023

  6、格式化时间

  常用的格式%H(小时)、%M(分钟)、%S(秒)、%f(微秒)、%h(简写的月份名,一般为英文简写)

  # 创建对象

  我的时间=日期时间.时间(微秒=99999,秒=8,小时=9,分钟=59)

  # 常用的格式%H(小时)、%M(分钟)、%S(秒)、%f(微秒)、%h(简写的月份名,一般为英文简写)

  打印(f“{我的时间}格式化后是:,datetime.time.strftime(my_time, % H:% M:% s . % f )# 09:59:08.099999

  打印(f“{我的时间}格式化后是:,datetime.time.strftime(my_time, %h:%M:%S.%f ))

  打印(f“{我的时间}格式化的类型是:,类型(日期时间。时间。strftime(my _ time, % H:% M:% s . % f )# class str

  # 保留至毫秒,利用字符串切片实现

  打印(f“{我的时间}格式化后是:,datetime.time.strftime(my_time, %H:%M:%S.%f)[:-3]) #格式化后是: 09:59:08.099

  7、ISO标准时间格式转换

  国际标准化组织标准的时间格式(两位小时:两位分钟:两位秒.6位微秒)。如08:07:06:000006)

  7.1、将时间对象转化为国际标准化组织标准格式的字符串

  打印(日期时间。时间。isoformat(my _ time),type(datetime。时间。isoformat(my _ time)))# 08:07:06.000006 class str

  print(datetime.time(12),datetime。时间。isoformat(日期时间。时间(12)))# 12:00:00 12:00:00

  # 转换前后类型查看,转换前:class datetime.time ,转换后:类" str "

  print(type(datetime.time(12))、type(datetime。时间。isoformat(日期时间。时间(12)))

  7.2、将国际标准化组织标准时间格式的字符串转换为时间类型(日期时间。时间)

  # 创建对象

  我的时间=日期时间.时间(微秒=6,秒=6,小时=8,分钟=7)

  # 将国际标准化组织标准时间格式的字符串转换为时间类型(日期时间。时间)

  # 08:07:06.000001类"日期时间.时间"

  打印(日期时间。时间。从isoformat( 08:07:06.000001 ),键入(日期时间。时间。从等格式( 08:07:06.000001 ))

  8、附录-完整代码

  #编码:utf-8

  导入日期时间

  # 时间对象类(日期时间.时间类)

  # 主要处理时分秒

  # 创建对象常用的参数(小时,分钟,秒,微秒)

  # 1小时=60分钟=3600秒=36000分秒=360000厘秒=3600000毫秒=36000000000微秒

  # 使用datetime.time()按传入的参数创建对象,不传参时创建最小的时间对象

  # 时间最大值

  打印(日期时间。时间。最大)# 23:59:59.999999

  打印(类型(日期时间。时间。max))# class datetime。时间

  # 时间最小值

  打印(日期时间。时间。分钟)# 00:00:00

  打印(类型(日期时间。时间。min))# class datetime。时间

  #时间对象之间最小可解析的差值

  打印(日期时间。时间。分辨率)# 0:00:00.000001

  打印(类型(日期时间。时间。分辨率))# class datetime。时间增量

  # 时间对象的创建

  # datetime.time(小时、分钟、秒、微秒)

  打印(日期时间。time())# 00:00:00

  打印(日期时间。时间(12))# 12:00:00

  print(datetime.time(12,2)) # 12:02:00

  print(datetime.time(12,2,54)) # 12:02:54

  print(datetime.time(12,2,54,999999)) # 12:02:54.999999

  # 关键字传参,按传入的参数创建对象

  print(datetime.time(微秒=99999)) # 00:00:00.099999

  print(datetime.time(微秒=99999,秒=8,小时=9,分钟=59)) # 09:59:08.099999

  我的时间=日期时间.时间(微秒=99999,秒=8,小时=9,分钟=59)

  #替换(自身、小时、分钟、秒、微秒)时间替换函数,

  #自我是一个必传的日期时间对象,其余参数可选

  # 错误实例如下

  # print(日期时间。time.replace())#类型错误:未绑定的方法时间。替换()需要一个参数

  # 按位置传参数时必须保证参数值在器规定的范围内

  # 顺序从左到右依次是:小时(小时)、分钟(分钟)、第二(秒)、微秒(微秒)

  #小时[0~23]、分钟[0~59]、秒[0~59]、微秒[0~999999]

  # 一个错误的示例

  # print(datetime . time . replace(my _ time,25),my _ time)# value错误:小时必须为0.23

  #仅替换小时数

  print(datetime . time . replace(my _ time,hour=23),my _ time)# 23:59:08.099999 09:59:08.099999

  print(datetime . time . replace(my _ time,23),my _ time)# 23:59:08.099999 09:59:08.099999

  #仅分钟更换

  print(datetime . time . replace(my _ time,minute=23),my _ time)# 09:23:08.099999 09:59:08.099999

  #按位置传递参数以替换分钟。您必须传递两个位置参数,小时和分钟,否则您将被报告为语法错误。

  print(datetime . time . replace(my _ time,9,23),my _ time)# 09:23:08.099999 09:59:08.099999

  #仅替换秒数

  print(datetime . time . replace(my _ time,second=23),my _ time)# 09:59:23.099999 09:59:08.099999

  #同样,当按位置传递参数来替换秒时,必须传递三个位置参数:小时、分钟和秒。

  print(datetime . time . replace(my _ time,9,59,15),my _ time)# 09:59:15.099999 09:59:08.099999

  #只替换细微的数字

  print(datetime . time . replace(my _ time,微秒=23),my _ time)# 09:59:08.000023 09:59:08.099999

  #同样,在通过按位置传递参数来替换微妙的数字时,必须传递三个位置参数:小时、分钟、秒和微秒。

  print(datetime . time . replace(my _ time,9,59,8,23),my _ time)# 09:59:08.000023 09:59:08.099999

  #建议按位置传递引用。

  #获取时间对象的属性(小时、分钟、秒、微秒)

  打印的小时(f {我的时间}是:{我的时间.小时}) # 09: 59: 08.09999是:9

  打印的分钟(f{my_time}是:{ my _ time . minute } )# 09:59:08.09999是:59。

  打印的秒数(f{my_time}) # 09: 59: 08.099999是:8。

  打印中的微秒(f{my_time}是{my_time .微秒}) # 09: 59: 08.09999是:9999。

  #结合时间对象属性,我们可以通过按位置传递参数来替换单个属性。

  print(datetime . time . replace(my _ time,my_time.hour,my_time.minute,my_time.second,23)) # 09:59:08.000023

  #格式化时间

  #常用格式%H(小时)、%M(分钟)、%S(秒)、%f(微秒)、%h(缩写月份名,一般用英文缩写)

  Print(f{my_time}格式为:,datetime.time.strftime (my _ time, % h:% m:% s . % f )# 09:59:08.09999

  打印类型(f{my_time}格式为:,type(datetime . time . strftime(my _ time, % h:% m:% s . % f )# class str

  #保留至毫秒

  Print(f{my_time}的格式为:,datetime.time.strftime (my _ time, % h:% m:% s.% f) [:-3]) #的格式为:09:59:08.099

  # ISO标准时间格式(小时:分钟:秒。微秒)

  #将时间对象转换为ISO标准格式的字符串

  print(datetime . time . isoformat(my _ time),type(datetime . time . isoformat(my _ time)))# 09:59:08.099999 class str

  print(datetime.time(12),datetime . time . isoformat(datetime . time(12)))# 12:00:00 12:00:00

  #检查转换前后的类型,转换前:类“datetime.time”,转换后:类“str”

  print(type(datetime.time(12))、type(datetime . time . isoformat(datetime . time(12)))

  #将ISO标准时间格式的字符串转换为时间类型(datetime.time)

  # 12:56:56.100000 class datetime . time

  print(datetime . time . from isoformat( 12:56:56.100000 ),type(datetime . time . from isoformat( 12:56:56.100000 ))

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: