在Python中操作时间之strptime()方法的使用

时间:2022-10-25 17:43:47

 strptime()方法分析表示根据格式的时间字符串。返回值是一个struct_time所返回gmtime()或localtime()。

格式参数使用相同的指令使用strftime();它默认为“%a %b %d %H:%M:%S %Y”相匹配的ctime()所返回的格式。

如果字符串不能按格式进行解析,或者如果它具有解析后多余的数据,ValueError被挂起。
语法

以下是strptime()方法的语法:

?
1
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()方法的使用。

?
1
2
3
4
5
6
7
8
9
#!/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)