【问题标题】:python datetime gets object has no attribute today errorpython datetime获取对象今天没有属性错误
【发布时间】:2014-10-10 04:59:41
【问题描述】:

我有以下两种不同的日期时间用途:

date=request.GET.get('date','')
    if date:
        date = datetime.strptime(date, "%m/%d/%Y")
        print date
    else:
        date = datetime.date.today()

似乎需要的进口是:

from datetime import datetime
date = datetime.strptime(date, "%m/%d/%Y")

import datetime
date = datetime.date.today()

我不能两者兼得:

from datetime import datetime
import datetime

或者一个覆盖另一个。

如果我有一个,我会收到错误: 对象今天没有属性

如何同时使用这两个日期时间函数?

【问题讨论】:

  • import datetimedate = datetime.date.today() 适合我。

标签: python python-import python-datetime


【解决方案1】:

对于日期时间,您应该始终导入模块本身,以避免这种混淆。

import datetime
date = datetime.datetime.strptime(date, "%m/%d/%Y")
date = datetime.date.today()

【讨论】:

  • NameError:名称“日期”未定义。您的意思是:“数据”吗?
【解决方案2】:

您可以为导入名称设置别名,以确保它们以不同的方式使用。这就是 datetime 在 Python 社区中受到相当多批评的原因之一。

怎么样:

from datetime import datetime as dt
import datetime

这些将代表两个不同的事物。如dir(dt)dir(datetime)所示

【讨论】:

    【解决方案3】:

    从您的代码中删除 .date. 应该可以:

    from datetime import datetime
    
    print datetime.strptime("12/31/2000", "%m/%d/%Y")
    print datetime.today()
    

    输出:

    2000-12-31 00:00:00
    2014-08-16 22:36:28.593481
    

    【讨论】:

      猜你喜欢
      • 2012-06-05
      • 2014-05-14
      • 1970-01-01
      • 1970-01-01
      • 2020-06-25
      • 2014-07-08
      • 1970-01-01
      • 2021-06-04
      • 2016-04-17
      相关资源
      最近更新 更多