在Python中操作时间之strptime()方法的使用
strptime()方法分析表示根据格式的时间字符串。返回值是一个struct_time所返回gmtime()或localtime()。
格式参数使用相同的指令使用strftime();它默认为“%a %b %d %H:%M:%S %Y”相匹配的ctime()所返回的格式。
如果字符串不能按格式进行解析,或者如果它具有解析后多余的数据,ValueError被挂起。
语法
以下是strptime()方法的语法:
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/python import time struct_time = time.strptime("30 Nov 00", "%d %b %y") print "returned tuple: %s " % struct_time When we run above program, it produces following result: returned tuple: (2000, 11, 30, 0, 0, 0, 3, 335, -1)