您可以通过“包装的”日期时间项访问它:
>>> dt.item().total_seconds()
65.0
说明 :这里dt
是一个阵列的标量中numpy
,这是一个零等级阵列或0维阵列。因此,您会发现dt
这里也具有ndarray拥有的所有方法,例如,您可以这样做dt.astype('float')
。但是它包装了一个python对象,在这种情况下是一个datetime.timedelta
对象。
要获得原始标量,可以使用dt.item()
。要为数组标量建立索引,可以使用带有空元组的getitem有点奇怪的语法:
>>> dt[()]
array(datetime.timedelta(0, 65), dtype='timedelta64[s]')
这应该适用于所有版本的numpy,但如果您使用的是numpy v1.7 +,则最好直接使用更新的numpy datetime API,如JFSebastien的回答中所述。
要numpy.timedelta64()
使用numpy1.7
实验性datetime API从对象获取秒数:
seconds = dt / np.timedelta64(1, 's')