【问题标题】:Missing properties in python's datetime modulepython的日期时间模块中缺少属性
【发布时间】:2014-01-08 12:17:18
【问题描述】:

我在 python 中遇到了 datetime 模块,因为这是我第一次在我的脚本中需要它。

但我确实有问题,例如:

import datetime

date_now = datetime.date.today()

print date_now

我得到的答案是:

Traceback(最近一次调用最后一次):

文件“datetime.py”,第 3 行,在

import datetime

文件“/root/Desktop/python_work/datetime.py”,第 5 行,在

today = datetime.date.today()

AttributeError: 'module' 对象没有属性 'date'

然后我检查了我的日期时间模块以列出属性:

导入日期时间

for p in dir(datetime):

    print p

结果我只得到:

> __builtins__
> 
> __doc__
> 
> __file__
> 
> __name__
> 
> __package__
> 
> datetime

是的,是的,“模块”对象没有属性“日期”,它真的没有。

有什么想法,应该在 python 安装中添加什么或如何修复它?

【问题讨论】:

    标签: python datetime properties module


    【解决方案1】:

    将您的文件从 datetime.py" 重命名为其他名称。此名称与内置 datetime 模块冲突。因此出现错误。

    【讨论】:

    • 是的,我什至没有注意到文件的名称,我只是把它作为测试脚本,像往常一样我为 main 的每个部分制作测试脚本。不小心用了同名...谢谢注解!!! :D
    【解决方案2】:

    问题是您的模块路径中有一个名为datetime.py 的自己的文件。您可以从回溯中看到:

    Traceback (most recent call last):    
    File "datetime.py", line 3, in
    import datetime
    File "/root/Desktop/python_work/datetime.py", line 5, in
    today = datetime.date.today()
    

    您不是在站点包中导入datetime.py,而是在/root/Desktop/python_work 中导入datetime.py

    事实上,datetime.py 似乎很可能是您正在运行的实际脚本,在这种情况下您只是在导入自己。

    解决方案是重命名脚本。而且,一般来说,不要给脚本命名与标准库中的模块相同的名称——尤其是您计划使用的模块。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 1970-01-01
      • 2018-02-16
      • 2019-02-28
      • 2020-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多