strptime()方法分析表示根据格式的时间字符串。返回值是一个struct_time所返回gmtime()或localtime()。
格式参数使用相同的指令使用strftime();它默认为“%a %b %d %H:%M:%S %Y”相匹配的ctime()所返回的格式。
如果字符串不能按格式进行解析,或者如果它具有解析后多余的数据,ValueError被挂起。
语法
time.strptime(string[, format])
string -- 这是其中将根据给定的格式解析字符串格式的时间。
format -- 这是将用于解析该给定的字符串的指令。
下面的指令可以嵌入格式字符串:
%a - 简写的星期几
%A - 完整的星期几
%b - 缩写的月份名称
%B - 完整的月份名称
%c - 首选日期和时间表示
%C - 世纪值(年份除以100,范围从00到99)
%d - 该月的第几天(01?31)
%D - 类似 %m/%d/%y
%e - 该月的一天(1?31)
%g - 类似于%G,但是没有世纪
%G - 对应于ISO周数4位数的年份(参见%V)
%h - 类似于 %b
%H - 小时,使用24小时制(00?23)
%I - 小时,使用12小时制(01?12)
%j - 一年中的哪一天(001?366)
%m - 月份(01?12)
%M - 分钟
%n - 换行符
%p - 根据给定的时间值am或pm
%r - 时间在上午和下午的符号:am/pm
%R - 时间以24小时制
%S - 秒
%t - 制表符
%T - 当前时间,等于 %H:%M:%S
%u - 工作日为数字(1到7),星期一= 1。警告:在Sun Solaris上周日=1
%U - 当年的周数,第一个星期日作为第一周的第一天
%V - 本年度ISO 8601的周数(01到53),其中,第1周是在本年度至少4天的第一个星期,星期一作为一周的第一天
%W - 当年的周数,与第一个星期一作为第一周的第一天
%w - 星期为一个小数,星期日=0
%x - 没有时间的日期表示
%X - 无日期首选的时间表示
%y - 一年无世纪(范围从00到99)
%Y - 今年,包括世纪
%Z or %z - 时区或名称或缩写
%% -文字%字符
这个返回struct_time所返回gmtime()或localtime()的值。
下面的例子显示 strptime()方法的使用。
#!/usr/bin/pythonimport timestructTime = time.strptime("1 May 2018", "%d %b %Y")print (structTime)
结果:
time.struct_time(tm_year=2018, tm_mon=5, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=121, tm_isdst=-1)
注意: 第一个参数和第二个参数,里面包含的数据项必须对应, 前面是三个数据, 那么后面的格式化参数也需要是三个格式符。