我不能为我的生活弄清楚是什么导致了这个非常奇怪的错误.
我在spyder IDE中为Windows 7运行python 2.7中的脚本.它在某一点使用datetime.datetime.strptime.我可以运行一次代码并且看起来很好(虽然我还没有完成调试,所以异常已经引发并且还没有正常完成),然后如果我再次尝试运行它,我得到以下内容(仅回溯结束)显示):
File “C:\path\to\test.py”,line 220,in std_imp
self.data[key].append(dt.datetime.strptime(string_var,string_format_var))
ImportError: Failed to import _strptime because the import lockis held by another thread.
我没有使用线程等运行多个线程.让代码超越这一点的唯一方法是完全重启计算机.重新启动spyder将无法正常工作.网络搜索似乎没有产生任何其他人的线索或迹象.
有谁知道发生了什么?这是某种GIL问题吗?什么是导入锁,为什么一旦我尝试运行代码一次,它似乎阻止我导入datetime模块的这个方法?
正如mfitzp所指出的,解决方案是在脚本开头包含对datetime.datetime.strptime的虚拟调用.
例如
# This is a throwaway variable to deal with a python bug throwaway = datetime.datetime.strptime('20110101','%Y%m%d')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。