1

我将 PYTHONPATH 设置为包含一些 .py 文件的目录。

当我进入 python 并键入“导入文件”时,找不到该文件(它说“没有名为 wsj10 的模块”)。

但是,如果我 cd 到该目录,并重复相同的过程,则找到该文件。

我只是不确定为什么 PYTHONPATH 被忽略了。我遵循了某些软件安装说明中的确切说明,所以我知道我在做正确的事情。

在任何情况下 PYTHONPATH 将被忽略或导入不起作用?

谢谢。

在下面的评论之后,这是一个成绩单:

  1. 将 file1.tgz 解压到 file1/。file1.tgz 包含一个名为 file1.py 的库/文件。

  2. 在外壳中输入:

    export PYTHONPATH=`pwd`/file1/:./
    
  3. echo $PYTHONPATH显示变量已设置。

  4. 运行python并输入“import file1”

我得到错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named file1

如果我先执行“cd file1”然后导入 file1,它会识别文件。

4

1 回答 1

1

在任何情况下 PYTHONPATH 将被忽略或导入不起作用?

是的。我已经在我的 /home/me/.bashrc 中设置了 PYTHONPATH 并且在终端上一切正常,但是当带有 mod_wsgi 的 Apache 启动我的 python 脚本时,它在 sysem 或专用用户下运行,它对我的​​ .bashrc 一无所知。

对于这种特殊情况,我只是使用 apache config 为 apache 设置 python 路径(WSGIPythonPath 选项)。

于 2014-12-04T13:47:35.980 回答