Python不会检查您的文件是否为符号链接!您的问题可能出在重命名模块或不在搜索路径中!
如果ModuleA成为ModuleB,并且您尝试导入ModuleA,则找不到它,因为它不存在。
如果将ModuleA移到另一个目录中,并使用另一个名称(代表一个新目录)生成一个符号链接,则该新目录必须是脚本和模块的公共父目录,或者symlink目录必须位于搜索路径中。
顺便说一句,不清楚是指模块还是封装。包含__init__.py
文件的目录将成为所有文件的包,.py
其中带有扩展名(=模块)。
DIRA
+ __init__.py <-- makes DIRA to package DIRA
+ moduleA.py <-- module DIRA.moduleA
移动和符号链接
/otherplace/DIRA <-+
| points to DIRA
mylibraries/SYMA --+ symbolic link
如果SYMA与DIRA同名,并且您的脚本位于SYMA目录中,则它应该可以正常工作。如果没有,那么您必须:
import sys
sys.path.append('/path/to/your/package/root')
如果要从软件包SYMA导入模块,则必须:
import SYMA.ModuleA
一个简单的:
import SYMA