亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

Python strptime()

Python strptime()

在本文中,您将学习从字符串创建日期时间对象(借助示例)。

视频:Python 中的日期和时间

strptime() 方法从给定的字符串创建一个日期时间对象。

注意: 您不能创建 datetime 每个字符串的对象。字符串需要有一定的格式。


示例 1:字符串到日期时间对象


from datetime import datetime

date_string = "21 June, 2018"

print("date_string =", date_string)
print("type of date_string =", type(date_string))

date_object = datetime.strptime(date_string, "%d %B, %Y")

print("date_object =", date_object)
print("type of date_object =", type(date_object))

当你运行程序时,输出将是:


date_string = 21 June, 2018
type of date_string = <class 'str'>
date_object = 2018-06-21 00:00:00
type of date_object = <class 'datetime.datetime'>

strptime() 是如何工作的?

strptime() 类方法有两个参数:

根据使用的字符串和格式代码,该方法返回其等效的 datetime 对象。

在上面的例子中:

在这里,


示例 2:字符串到日期时间对象


from datetime import datetime

dt_string = "12/11/2018 09:15:32"

# Considering date is in dd/mm/yyyy format
dt_object1 = datetime.strptime(dt_string, "%d/%m/%Y %H:%M:%S")
print("dt_object1 =", dt_object1)

# Considering date is in mm/dd/yyyy format
dt_object2 = datetime.strptime(dt_string, "%m/%d/%Y %H:%M:%S")
print("dt_object2 =", dt_object2)

当你运行程序时,输出将是:

dt_object1 = 2018-11-12 09:15:32
dt_object2 = 2018-12-11 09:15:32

格式化代码列表

下表显示了您可以使用的所有格式代码。

指令 意义 示例
%a 工作日的缩写。 周日、周一、...
%A 完整的工作日名称。 周日、周一、...
%w 工作日为十进制数。 0, 1, ..., 6
%d 以零填充小数表示的月份中的日期。 01, 02, ..., 31
%-d 以十进制数表示的月份中的日期。 1, 2, ..., 30
%b 缩写月份名称。 一月、二月、...、十二月
%B 完整的月份名称。 一月,二月,...
%m 以零填充十进制数表示的月份。 01, 02, ..., 12
%-m 十进制数形式的月份。 1, 2, ..., 12
%y 作为零填充十进制数的没有世纪的年份。 00, 01, ..., 99
%-y 没有世纪的年份作为十进制数。 0, 1, ..., 99
%Y 以世纪为十进制数的年份。 2013 年、2019 年等
%H 小时(24 小时制),用零填充的十进制数表示。 00, 01, ..., 23
%-H 小时(24 小时制)为十进制数。 0, 1, ..., 23
%I 小时(12 小时制),用零填充的十进制数表示。 01, 02, ..., 12
%-I 小时(12 小时制)为十进制数。 1, 2, ... 12
%p 语言环境的上午或下午。 上午,下午
%M 分钟作为一个零填充的十进制数。 00, 01, ..., 59
%-M 分钟作为十进制数。 0, 1, ..., 59
%S 秒作为一个零填充的十进制数。 00, 01, ..., 59
%-S 秒为十进制数。 0, 1, ..., 59
%f 微秒为十进制数,左侧补零。 000000 - 999999
%z +HHMM 或 -HHMM 形式的 UTC 偏移量。  
%Z 时区名称。  
%j 以零填充十进制数表示的一年中的某天。 001, 002, ..., 366
%-j 以十进制数表示的一年中的日期。 1, 2, ..., 366
%U 一年中的周数(星期日为一周的第一天)。新年中第一个星期日之前的所有日子都被认为是在第 0 周。 00, 01, ..., 53
%W 一年中的周数(星期一为一周的第一天)。新年中第一个星期一之前的所有日子都被认为是在第 0 周。 00, 01, ..., 53
%c 区域设置的适当日期和时间表示。 2013 年 9 月 30 日星期一 07:06:05
%x 语言环境的适当日期表示。 09/30/13
%X 语言环境的适当时间表示。 07:06:05
%% 一个文字 '%' 字符。 %

strptime() 中的ValueError

如果将字符串(第一个参数)和格式代码(第二个参数)传递给 strptime() 不匹配,你会得到 ValueError .例如:


from datetime import datetime

date_string = "12/11/2018"
date_object = datetime.strptime(date_string, "%d %m %Y")

print("date_object =", date_object)

如果你运行这个程序,你会得到一个错误。

ValueError: time data '12/11/2018' does not match format '%d %m %Y'

推荐读物: Python strftime()


Python

  1. Python 关键字和标识符
  2. Python 数据类型
  3. Python 运算符
  4. Python pass 语句
  5. Python 函数参数
  6. Python字典
  7. Python 迭代器
  8. Python 闭包
  9. Python 正则表达式
  10. Python 日期时间
  11. Python时间模块
  12. Python 睡眠()