1
我的sys.path是象下面这样:为什么一个目录是python系统路径中另一个目录的子目录?
/homel/ychao/python/python_lib
/usr/lib64/python27.zip
/usr/lib64/python2.7
/usr/lib64/python2.7/plat-linux2
/usr/lib64/python2.7/lib-tk
/usr/lib64/python2.7/lib-old
/usr/lib64/python2.7/lib-dynload
/usr/lib64/python2.7/site-packages
/usr/lib64/python2.7/site-packages/PIL
/usr/lib64/python2.7/site-packages/gst-0.10
/usr/lib64/python2.7/site-packages/gtk-2.0
/usr/lib64/python2.7/site-packages/wx-2.8-gtk2-unicode
/usr/lib/python2.7/site-packages
/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info
/usr/lib/python2.7/site-packages/IPython/extensions
我注意到有一些一些目录里面全是子目录/usr/lib64/python2.7,怎么会是这样?如果我删除了所有的子目录,并作出这样的sys.path中:
/homel/ychao/python/python_lib
/usr/lib64/python2.7
/usr/lib/python2.7/site-packages
一些软件包,我可以导入之前将修改后失效。所以这意味着“导入”不知道递归地找到合适的包?
谢谢!
感谢您的解释。我不太了解最后一部分。你能进一步解释吗? “如果直接在搜索路径上找不到util.py或util/__ init__.py,则递归处理会导致ham.util以错误的名称导入,从而导致Python的程序包/模块名称空间无效。” – wiswit