在Python中,有许多内置函数可以帮助我们处理日期和时间。其中一个非常有用的函数是strptime()。strptime()函数是将日期和时间字符串转换为datetime对象的Python模块。它允许您以不同的格式指定输入字符串,并根据该格式解析年份,月份,日期,小时,分钟,秒和毫秒。
strptime()的语法
strptime()函数接受两个参数:要解析的日期字符串和与该字符串相关联的格式字符串。格式字符串应该包含特殊字符,这些字符表示日期和时间的组成部分。
datetime.datetime.strptime(date_string, format)
date_string: 日期字符串
format: 格式化字符串
strptime()的返回值
strptime()返回一个datetime对象。这是一个具有year,month,day,hour,minute,second,microsecond属性的类,可以方便地对日期和时间进行操作。
使用示例
from datetime import datetime
date_string = "2021-09-22 15:30:00"
format_str = "%Y-%m-%d %H:%M:%S"
dt_obj = datetime.strptime(date_string, format_str)
print("DateTime Object:", dt_obj)
上面的代码将字符串“2021-09-22 15:30:00”转换为datetime对象,并使用“%Y-%m-%d %H:%M:%S”格式字符串解析它。输出结果应如下所示:
DateTime Object: 2021-09-22 15:30:00
格式化字符串的选项
以下是一些strptime()方法中使用的格式控制字符和它们表示的日期时间元素:
- %a : 星期几缩写(Mon, Tue, Wed等)
- %A : 星期几全称(Monday, Tuesday, Wednesday等)
- %w : 以整数形式表示星期几(0表示周日,1表示周一,以此类推)
- %d : 日(01到31)
- %b : 月份缩写 (Jan, Feb, Mar等)
- %B : 月份全称(January, February, March等)
- %m : 月(01到12)
- %y : 年份后两位数(例如:21表示2021年)
- %Y : 年份四位数(例如:2021)
- %H : 小时(00到23)
- %I : 小时(01到12)
- %p : 上午或下午标记(AM或PM)
- %M : 分钟数(00到59)
- %S : 秒数(00到59)
- %f : 微秒(000000到999999)
- %z : UTC时区偏差(如+0800或-0500)
注意事项
- 使用正确的格式字符串非常重要。如果您提供的格式与输入字符串不匹配,则会引发“ValueError”异常。
- strptime()函数只接受字符串作为输入。如果您需要将日期和时间从其他Python对象(如元组或列表)转换为datetime对象,则应使用datetime()函数。
结论
使用strptime()函数可以轻松地将日期和时间字符串转换为Python datetime对象。只需提供正确的格式字符串即可。希望本篇文章对您有所帮助。