On Thu, Mar 09, 2006 at 02:04:45PM -0800, mh wrote: > So on most modules I import, I can access the .__file__ attribute to > find the implementation. ie: > >>> import time > >>> time.__file__ > '/data1/virtualpython/lib/python2.3/lib-dynload/timemodule.so' > >>> import socket > >>> socket.__file__ > '/data1/virtualpython/lib/python2.3/socket.pyc' > > This doesn't work on the "thread" module: > >>> import thread > >>> thread.__file__ > Traceback (most recent call last): > File "<stdin>", line 1, in ? > AttributeError: 'module' object has no attribute '__file__' > > A few questions. Why? Where is thread.py or thread.so? (I can't find > it). > Python 2.4.1 (#2, Mar 30 2005, 21:51:10) [GCC 3.3.5 (Debian 1:3.3.5-8ubuntu2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> import thread >>> sys.modules['thread'] <module 'thread' (built-in)> >>> thread <module 'thread' (built-in)> >>> ^D sprat:~# cd ~/src/python-head/Modules/ sprat:~/src/python-head/Modules# ls thread* threadmodule.c threadmodule.o
It is a built-in module so it doesn't have a .so (dll) or .py file to mention. -Jack -- http://mail.python.org/mailman/listinfo/python-list