字符串到时间戳的转换

2024-04-23 09:04:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个大约560万时间戳的数据文件,格式是“2016-10-17 15:00:40.739”。出于某种原因,它们目前都是字符串,我需要将它们全部转换为日期时间,因为我稍后需要计算它们组之间的差异(例如:stamp1->;stamp2=2小时,4分钟等)。你知道吗

我发现了另一个问题“Converting string into datetime”,但我的问题格式不同,我无法得到适合我的答案。你知道吗

非常感谢您的帮助。你知道吗


Tags: 字符串答案gtdatetimestring数据文件格式时间
3条回答

使用numpy的datetime64

>>> np.datetime64('2016-10-17 15:00:40.739')
numpy.datetime64('2016-10-17T15:00:40.739')

通过简单的减法,或者使用numpy的timedelta64,您可以很容易地找到差异:

>>> np.datetime64('2016-10-17 15:00:40.739') - np.datetime64('2016-10-15 15:00:40.739')
numpy.timedelta64(172800000,'ms')
>>> np.datetime64('2016-10-17 15:00:40.739') + np.timedelta64(1,'D')
numpy.datetime64('2016-10-18T15:00:40.739')

您可以使用dateutil模块将字符串date转换为datetime对象。你知道吗

from dateutil import parser
dt =  parser.parse("2016-10-17 15:00:40.739")
print dt
print type(dt)

输出:

2016-10-17 15:00:40.739000
<type 'datetime.datetime'>

试试这个:

from datetime import datetime
a = "2016-10-17 15:00:40.739"
b = datetime.strptime(a,'%Y-%m-%d %H:%M:%S.%f')
print(b)
>>> datetime.datetime(2016, 10, 17, 15, 0, 40, 739000)

定义日期的格式。遵循以下指南:https://www.tutorialspoint.com/python/time_strptime.htm

相关问题 更多 >