我有一个运行良好的程序,然后我添加了以下代码用于测试:
class datetimeMock(datetime.datetime):
def utcnow():
return datetime.datetime (2013, 12, 17, 12)
if __name__=="__main__":
#testing:
datetime.datetime = datetimeMock
# start processing ...
现在程序似乎运行得很好,但我在退出时遇到了这个错误:
^{pr2}$有人能理解这个错误吗?在
替换内置类型是自找麻烦的;-)请尝试在程序退出之前将
datetime.datetime
还原为其原始值。atexit
在程序关闭时运行(请参阅文档-它是一个标准的Python模块)。假设IPython
正在使用sqlite3
程序结束时存储一些历史记录,而您的伪造的datetime.datetime
类混淆了它。在或者从一个普通的shell运行程序,而不是通过IPython。在
相关问题 更多 >
编程相关推荐