欢迎访问宙启技术站
智能推送

Python中的时间处理函数:time库中的strftime()、strptime()使用

发布时间:2023-07-28 03:19:10

时间处理是编程中常见的需求,在Python中可以使用time库来进行时间的处理。time库提供了一些用于时间处理的函数,其中最常用的两个函数是strftime()和strptime()。

1. strftime()函数:

strftime()函数用于将时间对象转换为一个格式化的字符串。它的语法如下:

strftime(format[, t])

参数format是一个字符串,用于指定输出的格式,具体的格式码由百分号(%)和字符组成,常用的格式码包括:

- %Y: 四位数的年份

- %m: 月份(01-12)

- %d: 月内中的一天(01-31)

- %H: 小时(00-23)

- %M: 分钟(00-59)

- %S: 秒(00-59)

- %a: 星期几的简写(Mon, Tue, Wed, Thu, Fri, Sat, Sun)

- %b: 月份的简写(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)

- %p: 上午或下午的标记(AM, PM)

参数t是一个时间对象,默认为当前时间。strftime()函数会根据format参数指定的格式将时间对象转换为字符串返回。

示例代码1:

   import time

   t = time.localtime()
   print(time.strftime("%Y-%m-%d %H:%M:%S", t))
   

运行结果1:

   2022-10-08 16:30:00
   

示例代码2:

   import time

   t = time.localtime()
   print(time.strftime("%Y/%m/%d %H:%M:%S", t))
   

运行结果2:

   2022/10/08 16:30:00
   

2. strptime()函数:

strptime()函数用于将一个格式化的字符串转换为时间对象。它的语法如下:

strptime(string, format)

参数string是一个字符串,表示要转换的时间。

参数format是一个字符串,用于指定输入的格式,格式码与strftime()函数的格式码相同。

示例代码3:

   import time

   time_str = "2022-10-08 16:30:00"
   t = time.strptime(time_str, "%Y-%m-%d %H:%M:%S")
   print(t)
   

运行结果3:

   time.struct_time(tm_year=2022, tm_mon=10, tm_mday=8, tm_hour=16, tm_min=30, tm_sec=0, tm_wday=5, tm_yday=281, tm_isdst=-1)
   

示例代码4:

   import time

   time_str = "2022/10/08 16:30:00"
   t = time.strptime(time_str, "%Y/%m/%d %H:%M:%S")
   print(t)
   

运行结果4:

   time.struct_time(tm_year=2022, tm_mon=10, tm_mday=8, tm_hour=16, tm_min=30, tm_sec=0, tm_wday=5, tm_yday=281, tm_isdst=-1)
   

综上所述,strftime()函数用于将时间对象转换为格式化的字符串,而strptime()函数用于将格式化的字符串转换为时间对象。这两个函数可以相互配合使用,方便进行时间的转换和处理。