import os import datetimedef 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 optionsoptions = parSEOptions() Now = datetime.datetime.Now() subtract = timedelta(hours=options.goback) difference = Now - subtractif 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
任何帮助将不胜感激.
解决方法 您已导入datetime,但未定义timedelta.你想要:from datetime import timedelta
要么:
subtract = datetime.timedelta(hours=options.goback)
此外,您的goback参数被定义为一个字符串,但是您将其传递给timedelta作为小时数.您需要将其转换为整数,或者更好地仍然将您的选项中的type参数设置为int.
总结以上是内存溢出为你收集整理的python – Timedelta没有定义全部内容,希望文章能够帮你解决python – Timedelta没有定义所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)