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

Posted

技术标签:

【中文标题】如何在 python 和 django 中使用 Pytz 根据给定的 UTC 偏移量转换数据和时间?【英文标题】:How to convert the data and time according to given UTC offset using Pytz in python & django? 【发布时间】:2012-06-03 16:09:17 【问题描述】:

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

 2012-05-29 10:03:37

我得到以下行的偏移量:

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

上面的偏移量将给出+0530 .现在我想用这个偏移量改变时间戳对象。例如:

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】:

我希望这是您正在寻找的:

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")

【讨论】:

以上是关于如何在 python 和 django 中使用 Pytz 根据给定的 UTC 偏移量转换数据和时间?的主要内容,如果未能解决你的问题,请参考以下文章

Python 和 Django - 如何在内存和临时文件中使用

如何在 Django 中将 Http Post 参数的 Json 值转换为 Python 字典?

Python学习第107天(Django的url控制和conf设置)

Python用Django写restful api接口

python文档生成工具:pydocsphinx;django如何使用sphinx?

如何在python文件中,引用django1.10的model