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

如何使用Python中的datetime模块中的strftime函数来格式化日期时间?

发布时间:2023-06-26 18:42:42

在Python中,日期和时间可以使用datetime模块来处理。其中,strftime函数是一个非常强大的函数,可以将日期和时间转换成任何格式的字符串。 strftime函数可以将日期和时间格式化为指定的字符串格式。不同的格式化字符含义不同,下面详细介绍strftime函数的常用格式。

基本使用方法:

from datetime import datetime
dt = datetime.now()
print(dt.strftime('%Y-%m-%d %H:%M:%S'))

输出结果:

2022-09-01 15:33:26

这里我们调用了现在的时间,并使用strftime格式化为年-月-日 时:分:秒的形式。

常用格式:

- %y 两位数的年份表示(00-99)

- %Y 四位数的年份表示(0000-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 当前时区的名称

- %% %号本身

例子:

dt = datetime.now()

# 打印:“2022”
print(dt.strftime('%Y'))

# 打印:“22”
print(dt.strftime('%y'))

# 打印:“09”
print(dt.strftime('%m'))

# 打印:“1”
print(dt.strftime('%-m'))

# 打印:“01”
print(dt.strftime('%02m'))

# 打印:“01”
print(dt.strftime('%d'))

# 打印:“1”
print(dt.strftime('%-d'))

# 打印:“01”
print(dt.strftime('%02d'))

# 打印:“16:43”
print(dt.strftime('%H:%M'))

# 打印:“04:43 PM”
print(dt.strftime('%I:%M %p'))

# 打印:“星期三”
print(dt.strftime('%A'))

# 打印:“Wed”
print(dt.strftime('%a'))

# 打印:“Sep”
print(dt.strftime('%b'))

# 打印:“September”
print(dt.strftime('%B'))

# 打印:“2022-09-01”
print(dt.strftime('%Y-%m-%d'))

# 打印:“2022-09-01 16:43:49”
print(dt.strftime('%Y-%m-%d %H:%M:%S'))

除此之外,strftime函数还支持通过提供自定义格式来格式化输出日期和时间。例如,以下代码演示了如何使用自定义格式化字符串将时间转换为字符串:

dt = datetime.now()

newformat = dt.strftime("Today is %A, %B %d, %Y. The time is %I:%M%p.")

print(newformat)

输出结果:

Today is Thursday, September 01, 2022. The time is 04:43PM.

在上面的代码中,我们提供了一个自定义字符串来格式化日期和时间,并使用strftime函数将它们转换成字符串。

总结一下:

strftime函数是Python datetime模块中的一个非常强大的函数,可以将日期和时间格式化为指定的字符串格式。上面我们介绍了strftime的常用格式,以及如何使用自定义格式化字符串来格式化日期和时间。这将帮助您更好地理解如何使用strftime函数在Python中处理日期和时间。