如何使用python&中的Pytz根据给定的UTC偏移量转换数据和时间Django的?

时间:2012-05-29 12:23:57

标签: python django utc pytz timezone-offset

我想使用Pytz根据给定的UTC偏移量转换时间戳对象(从模型中提取)。在我打印时间戳对象时将其渲染到模板之前,它使用以下格式:

 2012-05-29 10:03:37

我正在使用以下行获得偏移量:

 offset = datetime.datetime.now(pytz.timezone('Asia/Kolkata')).strftime('%z')

上述偏移量将为+0530 。现在我想使用此偏移量在timestamp对象中进行更改。例如:

timestamp: `2012-05-29 10:03:37`
offset:   `+0530`
after change,
timestamp: `2012-05-29 15:33:37`

这个怎么样:

timestamp: `2012-05-29 23:03:37`
offset:   `+0530`
after change,
timestamp: `2012-05-30 4:33:37`

根据偏移量查看它也改变的日期。操纵时间后,它甚至可以12小时格式。

任何帮助都会很明显

1 个答案:

答案 0 :(得分:1)

我希望这就是你要找的东西:

d = datetime.now(pytz.timezone('UTC'))   # get date in UTC format - you'll be getting it from the database
local = d.astimezone('Asia/Kolkata')
print local.strftime("%Y-%m-%d %H:%M:%S %z")