如果要将python日期时间转换为自纪元以来的秒数,则可以明确地执行以下操作:
>>> (datetime.datetime(2012,04,01,0,0) - datetime.datetime(1970,1,1)).total_seconds()
1333238400.0
在Python 3.3+中,你可以timestamp()改用:
>>> datetime.datetime(2012,4,1,0,0).timestamp()
1333234800.0
为什么不应该使用 datetime.strftime('%s')
Python实际上并不支持%s作为strftime的参数(如果你不在http://docs.python.org/library/datetime.html#strftime-and-strptime-behavior中查看,则不在列表中),唯一之所以起作用,是因为Python会将信息传递到使用本地时区的系统的strftime中。
>>> datetime.datetime(2012,04,01,0,0).strftime('%s')
'1333234800'