找不到thread.py

时间:2010-01-04 02:37:37

标签: python

这段代码是什么意思?

try:
    import thread
except ImportError:
    del _sys.modules[__name__]#why
    raise

但我找不到thread.py。

为什么,del _sys.modules[__name__]

2 个答案:

答案 0 :(得分:5)

来自Python的threading.py的代码正在尝试加载thread模块的C实现。如果它失败了(由于某种原因,它没有被编译,就像所有Python发行版一样),那么它会从模块列表中删除它自己,这样threading就不会显示为已导入。< / p>

如果您正在寻找thread模块的来源,请点击此处:http://svn.python.org/projects/python/trunk/Python/thread.c

答案 1 :(得分:0)

必须是一些自定义逻辑 - 跟踪导入的内容和位置。在常规Python 3.1中,这个独立代码不起作用:

>>> try:
    import thread
except:
    del _sys.modules[__name__]
    raise

Traceback (most recent call last):
  File "<pyshell#10>", line 4, in <module>
    del _sys.modules[__name__]
NameError: name '_sys' is not defined
>>> 

你在哪里找到这个?