将字符串日期转换为时间戳并返回python

2024-05-20 20:21:12 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,我正在尝试从jQueryUI获取一个日期输入,并将其作为时间戳处理到数据库中,并将其读回。我知道我可能需要使用strftime,但是我不知道怎么做。在

日期为MM/DD/YYYY

我想把它转换成一个时间戳,并且在select查询之后返回到MM/DD/YYYY


Tags: 数据库时间selectddjqueryuimmstrftimeyyyy
1条回答
网友
1楼 · 发布于 2024-05-20 20:21:12

要将字符串解析为datetime.datetime对象:

In [23]: import datetime
In [29]: datetime.datetime.strptime('9/1/2011','%m/%d/%Y')
Out[29]: datetime.datetime(2011, 9, 1, 0, 0)

下面是一个小图,描述了如何在Python中完成datetime/timetuple/timestamp转换:

^{pr2}$

因此,要将其转换为时间戳(将输入视为本地日期时间):

In [30]: import time

In [31]: time.mktime(datetime.datetime.strptime('9/1/2011','%m/%d/%Y').timetuple())
Out[31]: 1314849600.0

要将其转换为时间戳(将输入视为UTC日期时间):

In [32]: import calendar

In [33]: calendar.timegm(datetime.datetime.strptime('9/1/2011','%m/%d/%Y').timetuple())
Out[33]: 1314835200

要将其转换回MM/DD/YYYY格式的字符串:

In [34]: timestamp=1314849600.0
In [35]: datetime.datetime.fromtimestamp(timestamp).strftime('%m/%d/%Y')
Out[35]: '09/01/2011'

或者(如果时间戳与UTC有关):

In [36]: datetime.datetime.utcfromtimestamp(timestamp).strftime('%m/%d/%Y')
Out[36]: '09/01/2011'

相关问题 更多 >