即使在sys.path.append之后也无法导入python模块

use*_*333 1 python centos cluster-computing

使用CENTOS和Python 2.6.6在集群上工作

尝试将模块添加到python函数

函数some_func.py看起来像:

#!/usr/bin/env python
from __future__ import division
import sys

sys.path.append('/Users/username/modules')
import some_module as sm
Run Code Online (Sandbox Code Playgroud)

/ Users / username / modules中, 我有两个文件: __ init__.pysome_module.py

当我在Mac上运行时,它可以工作,但在CENOS机器上运行时,它不能工作。

我得到错误: Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named some_module

任何想法可能会发生什么?

Joh*_*don 5

添加/Users/username/modules到路径然后尝试导入some_module意味着Python实际上正在寻找一个名为的目录/Users/username/modules/some_module,该目录将(至少)包含一个名为的文件__init__.py

我不知道为什么它可以在Mac电脑上使用。也许您some_module在另一个地方有另一个副本,正在寻找副本?

在Mac上尝试以下操作:

import some_module
print (some_module.__file__)
Run Code Online (Sandbox Code Playgroud)

并查看报告为完整路径名的内容。