Python 如何将日期字符串转换为日期对象

Python 如何将日期字符串转换为日期对象

在本文中,我们将日期字符串转换为日期对象。我们使用 strptime() 方法来将日期字符串转换为日期对象。

strptime()

strptime() 方法将日期作为输入,并将其转换为日期对象。请注意,您不能将任何字符串转换为日期时间对象。字符串应该处于特定的格式。

语法

strptime()方法的语法如下所示。

datetime.strptime(time_data, format_data)

在这里,

time_date – 是以字符串格式表示的时间。

format_date – 是以日期时间格式表示的数据(字符串),通过使用这个函数从time_data转换而来。

一些重要的格式代码

格式代码 含义 示例
%a 缩写的星期几名称。 星期一、星期二…
%A 完整的星期几名称。 星期一、星期二…
%w 一周中的星期几,用十进制表示。 0、1、2…
%d 月份中的日期,以零填充的十进制数。 01、02…、30
%-d 月份中的日期,以十进制数表示。 1、2…、30
%b 缩写的月份名称。 一月、二月…
%B 完整的月份名称。 一月,二月,……
%m 作为零填充的十进制数的月份。 01,02,03,……,12
%-m 作为十进制数的月份。 1,2,3,……,12
%y 作为零填充的十进制数的年份(没有世纪)。 00,01,……
%Y 作为十进制数的带有世纪的年份。 2001,2002,……
%-y 作为十进制数的年份(没有世纪)。 0,1,2,3,……
%H 作为零填充的十进制数的小时(24小时制)。 01,02,……,24
%-H 小时(24小时制)作为十进制数。 1,2,….,24.
%I 小时(12小时制)作为零填充的十进制数。 01,02,….,12
%-I 小时(12小时制)作为十进制数。 1,2,…,12.
%p 上午或下午 上午,下午.
%M 分钟作为零填充的十进制数。 00,01,02,….,59
%-M 分钟作为十进制数。 1,2,…..,59.
%S 秒作为零填充的十进制数。 01,02,….,59
%-S 将秒数转换为小数形式。 1,2,…..,59.
%f 微秒数左侧填充零的小数形式 000000,000001,….999999
%j 将日期转换为一年中的第几天,以零填充的小数形式。 001, 002, …, 366

示例1

在下面的示例中,我们使用 strptime 将字符串日期转换为 datetime 对象。同时,我们还提取了微秒、分钟和秒钟。

from datetime import datetime
time_data = "23/01/01 04:35:7.123"
format_data = "%d/%m/%y %H:%M:%S.%f"
date = datetime.strptime(time_data, format_data)
print("Microsecond:",date.microsecond)
print("Hour:",date.hour)
print("Minute:",date.minute)
print("Second:",date.second)
print("The date is:",date)

输出

接收到的输出如下所示。

Microsecond: 123000
Hour: 4
Minute: 35
Second: 7
The date is: 2001-01-23 04:35:07.123000

示例2

在这个第一个示例中,模块被导入,并且输入的DateTime字符串被提供。现在我们使用strptime()方法来获取所需的格式,使用date()来从DateTime中检索日期。

import datetime
date_str = '29122017' # The date - 29 Dec 2017
format_str = '%d%m%Y' # The format
datetime_obj = datetime.datetime.strptime(date_str, format_str)
print(datetime_obj.date())

输出

下面显示了产生的输出。

2017-12-29

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程