【问题标题】:How to get only month name and total in Django如何在 Django 中仅获取月份名称和总计
【发布时间】:2021-06-30 14:53:59
【问题描述】:

我正在尝试仅获取月份名称和计数

Data = QuerySet [{'month': datetime.datetime(2021, 3, 1, 0, 0, tzinfo=<DstTzInfo 'Asia/Dhaka' +06+6:00:00 STD>), 'count': 2 }]

如果我使用Data[0]['month'],结果显示为(2021, 3, 1,0,0, ...),但我只需要查看为 March

如何查看月份?

【问题讨论】:

    标签: python django datetime django-queryset


    【解决方案1】:

    我假设在这里获取总数/计数不是一个大问题。

    由于您已经拥有日期时间对象,即: (2021, 3, 1,0,0, ...) ,您可以使用 obj.strftime("%B") 提取月份名称

    像这样:

    >>> date_obj
    datetime.datetime(2021, 3, 1, 0, 0, tzinfo=<DstTzInfo 'Asia/Dhaka' LMT+6:02:00 STD>)
    >>> month = date_obj.strftime("%B")
    >>> month
    'March'
    

    您还可以获得月份、工作日等的简短版本:Python documentation: strftime

    【讨论】:

    • 感谢您的回复。但是当我运行 month = data.strftime("%B") 时,错误是 'QuerySet' object has no attribute 'strftime' 。供您参考,我已经`导入日期时间`
    • 你把Data[0]['month']的结果保存在date_obj里了吗?
    • 你说得对,我错过了。在保存 Data[0]['month'] 的结果之后,我得到了 2021-03-01 00:00:00+06:00 完整的结果。我现在的代码是 m = (data[0]['month']) m.strftime("%B") print(m) 请问我现在能做什么?
    • 我得到了正确的答案。我所做的是 m = (data[0]['month']).strftime("%B") 在一行中,现在它给出的答案是 March 。非常感谢。
    • np!.. 我认为您可能已经保存了日期时间 obj,所以我没有在回复中提到这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多