📅  最后修改于: 2023-12-03 15:19:14.607000             🧑  作者: Mango
numpy.datetime64()
是 numpy 库中用于处理时间日期的方法,它允许我们将时间日期精确到纳秒级别,支持多种日期格式。本文将详细介绍 numpy.datetime64()
的使用方法。
numpy.datetime64(date, fmt=None)
参数说明:
date
: 时间日期的字符串或者日期对象。fmt
: 时间日期的格式字符串,如果不提供则默认为 ISO 8601 格式。返回值:
date
是字符串,返回 numpy.datetime64
类型的时间日期对象。date
是日期对象,返回与 date
相同类型的 numpy.datetime64
对象。import numpy as np
# 转换为默认 ISO 8601 格式
date_str = "2022-07-31 12:30:45"
dt1 = np.datetime64(date_str)
print(dt1) # 2022-07-31T12:30:45
# 转换为指定格式,需要提供 fmt 参数
date_str2 = "2022/07/31 12:30:45"
dt2 = np.datetime64(date_str2, fmt="%Y/%m/%d %H:%M:%S")
print(dt2) # 2022-07-31T12:30:45
# 支持更高的精度,精度可达纳秒级
date_str3 = "2022-07-31 12:30:45.123456789"
dt3 = np.datetime64(date_str3)
print(dt3) # 2022-07-31T12:30:45.123456789
import datetime
import numpy as np
# 使用 datetime.date() 方法创建日期对象
date_obj = datetime.date(2022, 7, 31)
dt1 = np.datetime64(date_obj)
print(dt1) # 2022-07-31
# 使用 datetime.datetime() 方法创建日期时间对象
datetime_obj = datetime.datetime(2022, 7, 31, 12, 30, 45)
dt2 = np.datetime64(datetime_obj)
print(dt2) # 2022-07-31T12:30:45
numpy.datetime64 支持以下常用操作:
np.arange(start, stop, step, dtype='datetime64')
。np.datetime64(datetime1) - np.datetime64(datetime2)
。import numpy as np
# 创建一个时间范围
rng = np.arange('2022-07-01', '2022-08-01', np.timedelta64(1, 'D'), dtype='datetime64')
print(rng)
# [datetime64('2022-07-01') datetime64('2022-07-02') datetime64('2022-07-03')
# datetime64('2022-07-04') datetime64('2022-07-05') datetime64('2022-07-06')
# datetime64('2022-07-07') datetime64('2022-07-08') datetime64('2022-07-09')
# datetime64('2022-07-10') datetime64('2022-07-11') datetime64('2022-07-12')
# datetime64('2022-07-13') datetime64('2022-07-14') datetime64('2022-07-15')
# datetime64('2022-07-16') datetime64('2022-07-17') datetime64('2022-07-18')
# datetime64('2022-07-19') datetime64('2022-07-20') datetime64('2022-07-21')
# datetime64('2022-07-22') datetime64('2022-07-23') datetime64('2022-07-24')
# datetime64('2022-07-25') datetime64('2022-07-26') datetime64('2022-07-27')
# datetime64('2022-07-28') datetime64('2022-07-29') datetime64('2022-07-30')]
# 计算时间差
dt1 = np.datetime64('2022-07-31 12:30:45')
dt2 = np.datetime64('2022-07-31 11:30:45')
print(dt1 - dt2) # 3600000000 nanoseconds = 1 hour
numpy.datetime64()
是一个用于处理时间日期的强大方法,支持多种日期格式和高精度精度计算。在实际项目中,我们通常需要处理时间日期数据,numpy.datetime64()
可以方便地完成相关任务,提升代码效率。