我有一个时间值数组= [hh:mm:ss],秒数为小数,如13.80秒,15.90秒等等。我想做什么:
import time
for i in timestamp_array:
new_time = time.strptime(i,"%H:%M:%S")
我收到错误:
ValueError: unconverted data remains: .80
我该如何处理? 谢谢!
答案 0 :(得分:0)
由于您要绘制值,我建议使用matplotlib.dates
,您也可以将时间转换为数字和向后转换。
In [12]:
import matplotlib.dates as mpd
mpd.datestr2num('12:23:12')
Out[12]:
735420.5161111112
In [13]:
mpd.num2date(735420.5161111112)
Out[13]:
datetime.datetime(2014, 7, 6, 12, 23, 12, tzinfo=<matplotlib.dates._UTC object at 0x051FD9F0>)
一个最小的例子:
plt.plot([mpd.datestr2num('12:23:12.89'), mpd.datestr2num('12:23:13.89')],
[1,2], 'o')
ax=plt.gca()
ax.xaxis.set_major_locator(mpd.HourLocator())
ax.xaxis.set_major_formatter(mpd.DateFormatter('%H:%M:%S.%f'))