gpt4 book ai didi

python - Timedelta 未定义

转载 作者:太空狗 更新时间:2023-10-29 18:15:42 46 4
gpt4 key购买 nike

下面是我正在处理的代码。据我所知,没有问题,但是当我尝试运行这段代码时,我收到了一个错误。

import os 
import datetime

def parseOptions():

import optparse
parser = optparse.OptionParser(usage= '-h')
parser.add_option('-t', '--type', \
choices= ('Warning', 'Error', 'Information', 'All'), \
help= 'The type of error',
default= 'Warning')
parser.add_option('-g', '--goback', \
type= 'string')
(options, args) = parser.parse_args()
return options

options = parseOptions() now = datetime.datetime.now() subtract = timedelta(hours=options.goback) difference = now - subtract

if options.type=='All' and options.goback==24:
os.startfile('logfile.htm')

else:
print
print 'Type =', options.type,
print
print 'Go Back =', options.goback,'hours'
print difference.strftime("%H:%M:%S %a, %B %d %Y")
print

错误如下:

Traceback (most recent call last):
File "C:\Python27\Lib\SITE-P~1\PYTHON~2\pywin\framework\scriptutils.py", line 325, in RunScript
exec codeObject in __main__.__dict__
File "C:\Users\user\Desktop\Python\python.py", line 19, in <module>
subtract = timedelta(hours=options.goback)
NameError: name 'timedelta' is not defined

如有任何帮助,我们将不胜感激。

最佳答案

您已导入日期时间,但未定义时间增量。您想要:

from datetime import timedelta

或:

subtract = datetime.timedelta(hours=options.goback)

此外,您的 goback 参数被定义为一个字符串,但随后您将其作为小时数传递给 timedelta。您需要将其转换为整数,或者最好将选项中的 type 参数设置为 int

关于python - Timedelta 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16782682/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com