【问题标题】:Convert date object in normal format以正常格式转换日期对象
【发布时间】:2018-10-30 21:23:42
【问题描述】:

当我使用 python 对象时,我得到:

2018-05-18 08:38:58+00:00

这不是我需要的格式。我们需要转换成这种数据格式:

2018-05-18 08:38:58

如何在 python/Django 中转换它?

例子:

datetime.datetime.strptime('2018-05-18 10:05:06', "%Y-%m-%d %H:%M:%S")

它工作正常,但请让我知道如何将 2018-05-18 10:05:06 作为数据库传递,但数据库提供

2018-05-18 08:38:58+00:00

infoDevice=Device.objects.get(user_id=user.id) newDate = Device.last_notification_time

它的奉献 2018-05-18 08:38:58+00:00

所以请告诉我如何根据 2018-05-18 08:38:58 查看日期

【问题讨论】:

  • 你能详细说明问题的背景吗?
  • 请加Device型号
  • 不需要设备型号我已经按照 iphone 等实现了现在它可以根据更改正常工作
  • 我看了你的回答,你能告诉我info.dbdatetimetype() 吗?即print(type(info.dbdatetime))?
  • 这只是和数据库变量有关

标签: python django python-3.x datetime


【解决方案1】:

假设您有一个 python datetime.datetime 对象,那么,

datetime_obj.strftime('%Y-%m-%d %H:%M:%S') 将返回一个具有指定格式的 string

示例

In [1]: from datetime import datetime

In [2]: datetime.utcnow()
Out[2]: datetime.datetime(2018, 5, 21, 8, 59, 41, 369517)

In [3]: date_time_obj = datetime.utcnow()

In [4]: date_time_obj.strftime('%Y-%m-%d %H:%M:%S')
Out[4]: '2018-05-21 08:59:55'

【讨论】:

  • 您是否尝试将 DB datetime 对象转换为 string
【解决方案2】:

现在我已经实现了 python 更改的代码,现在它可以工作了,我们只需要更改时间设置。

从数据库中获取任何日期并根据需要进行更改。

newDateFor = str(info.dbdatetime)
new_dt = newDateFor.split('+')[0]
newDate = datetime.datetime.strptime(new_dt, "%Y-%m-%d %H:%M:%S")
a = datetime.datetime.now().replace(microsecond=0)
b = newDate

根据更改实现任何其他功能

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 2022-11-23
    相关资源
    最近更新 更多