繁体   English   中英

为什么找不到Python日期时间delta?

[英]Why is Python datetime time delta not found?

我想用mmddyyyy格式制作一系列日期。 日期将从当天开始,然后在未来两周内开始。 所以这一切都取决于开始日期。 当我运行我的代码时,我得到一个错误,指出:

Traceback (most recent call last):
File "timeTest.py", line 8, in <module>
day = datetime.timedelta(days=i)
AttributeError: type object 'datetime.datetime' has no attribute 'timedelta'

我不确定为什么会这样,因为在网上搜索后,我注意到人们正在以这种方式使用'timedelta'。

这是我的代码:

import time
from datetime import datetime, date, time, timedelta

dayDates = []
today = datetime.now()
dayDates.append(today.strftime("%m%d%Y"))
for i in range(0,14):
    day = today + datetime.timedelta(days=i)
    print day
import time
from datetime import datetime, date, time, timedelta

dayDates = []
today = datetime.now()
dayDates.append(today.strftime("%m%d%Y"))
for i in range(0,14):
    day = today + datetime.timedelta(days=i)
    print day

你得到的错误是, datetime没有属性timedelta 它发生了,因为你从datetime特定的东西导入。 现在,您可以键入timedelta而不是datetime.timedelta来访问timedelta

import time
from datetime import datetime, date, time, timedelta

dayDates = []
today = datetime.now()
dayDates.append(today.strftime("%m%d%Y"))
for i in range(0,14):
    day = today + timedelta(days=i)
    print day

像那样,你的代码应该正常工作。 另外,请密切注意错误消息并尝试仔细阅读。 如果你足够专注,你通常可以自己解决问题。

你已经导入了timedelta 您无需通过日期时间访问它。

import time
from datetime import datetime, date, time, timedelta

dayDates = []
today = datetime.now()
dayDates.append(today.strftime("%m%d%Y"))
for i in range(0,14):
    day = today + timedelta(days=i)
    print day

你要调用的方法是datetime.timedelta ,因为看到这里 datetime是包含timedelta的模块。

如果你看看你的import线:

from datetime import datetime, date, time, timedelta

...你会看到你从datetime模块导入datetime 所以,当你调用datetime.timedelta ,你实际上是在调用datetime.datetime.timedelta ,它不存在。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM