Python中字符串转时间
time1 = "2010-04-20 10:07:30"
time2 = "2010-04-21 10:07:30"
怎么把上面的字符串转换成时间戳呢?
我需要计算这两个时间戳的差值,也就是 time2-time1
。
4 个回答
3
在编程中,有时候我们需要把一些东西放到一个地方,然后再从那个地方拿出来。这个过程就像是把书放到书架上,然后再从书架上拿书一样。
有些时候,我们会用一个叫做“数组”的东西来存放这些数据。数组就像一个整齐的书架,每个书的位置都是固定的。你可以通过书的位置(我们称之为“索引”)来找到它。
但是,数组有一个小问题,就是它的大小是固定的。一旦你决定了要放多少本书,就不能再增加或减少了。这就像是一个只能放十本书的书架,如果你想放第十一本书,就没地方放了。
为了克服这个问题,我们可以使用“列表”。列表就像一个可以随时扩展的书架,你可以随时添加或删除书籍,而不需要担心空间不够。
所以,当你在编程时,如果你需要一个可以随时调整大小的存储空间,列表会是一个不错的选择。而如果你知道你需要的空间是固定的,数组可能会更简单一些。
总之,选择数组还是列表,主要看你的需求是什么。希望这个解释能帮助你更好地理解这些概念!
>>> t1 = datetime.strptime(time1, "%Y-%m-%d %H:%M:%S")
>>> t2 = datetime.strptime(time2, "%Y-%m-%d %H:%M:%S")
>>> t2-t1
datetime.timedelta(1)
>>> (t2-t1).days
1
>>> (t2-t1).seconds
0
3
如果你像我一样在用Python 2.4的系统:
from time import strptime
from datetime import datetime
str_to_datetime = lambda st: datetime(*strptime(st, '%Y-%m-%d %H:%M:%S')[:6])
str_to_datetime('2010-04-20 10:07:30')
否则,datetime.strptime()就可以正常使用了。
25
适用于 Python 2.5 及以上版本
from datetime import datetime
format = '%Y-%m-%d %H:%M:%S'
print datetime.strptime(time2, format) -
datetime.strptime(time1, format)
# 1 day, 0:00:00
补充:适用于 Python 2.4 版本
import time
format = '%Y-%m-%d %H:%M:%S'
print time.mktime(time.strptime(time2, format)) -
time.mktime(time.strptime(time1, format))
# 86400.0