0
我写了一个脚本来读取类型为'Tue Nov 18 19:23:17 2014'的ASCII格式的日期,并将其转换为绘图的十进制日期。我的两行代码有效,但看起来很复杂。我无法直接找到一个库函数来做这件事,我想我一定会错过一些东西;应该有一种简洁的方式来做到这一点。任何建议?简明的ASCII日期到十进制日期
import time, datetime
from matplotlib import dates
b = time.strptime('Tue Nov 18 19:23:17 2014')
d = dates.date2num(datetime.datetime(b[0],b[1],b[2],b[3],b[4],b[5]))
print d
#this code results in 735555.807836
#Simplified code incorporating suggestion by Toni_W
from matplotlib import dates
from dateutil.parser import parse
dates.date2num(parse('Tue Nov 18 19:23:17 2014'))
您可以使用一个公式直接从'time'去'float',但它肯定赢不要简洁。 –
你如何处理时区?或者你的输入是否被认为是UTC? – ghoti
@Toni_W,谢谢:基本上我的代码被简化为一行:dates.date2num(parse('Tue Nov 18 19:23:17 2014')) – gciriani