python - 如何在不同目录下运行python?

标签 python linux

我正在维护Python代码。 Python安装在/usr/bin ,代码安装在 /aaa ,安装在/aaa/python2.5下的python 2.5 。每次我运行Python时,它都会使用/usr/bin一。如何让它运行/aaa/python2.5

当我运行 Python -v; import bbb; bbb.__file__; 时也是如此它会自动显示它使用 bbb模块位于 /usr/ccc/ (不知道为什么),而不是使用 bbb模块位于 /aaa/python2.5/lib

如何让它运行python2.5并使用`/aaa/python2.5/lib'模块?我问这个问题的原因是,如果我们维护了一个代码,但其他人仍在使用它,我们需要将代码安装在新目录下并修改它,运行它并调试它。

最佳答案

更改 shebang-line (如果有这样一行)

通常

#!/usr/bin/env python

用于启动在路径中首先找到的Python解释器,这就是virtualenv的工作原理,即它更改路径,以便将所选的解释器放在第一个位置,上面的行就可以正常工作。

在您的示例中,将 i 更改为

#!/aaa/python2.5

请注意,必须设置可执行标志才能使其工作。 示例:

$ chmod u+x script.py
$ ./script.py

参见PYTHONPATH有关 python 如何搜索模块的说明。

关于python - 如何在不同目录下运行python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15487848/

相关文章:

linux - 通过 bash 将文件从一个目录排序并复制到另一个目录

java - 如何快速构建Web Application?

python - 值错误 : Argument must be a dense tensor - Python and TensorFlow

python - 如何阻止 Plotly Scatter 创建不存在的 X 值

linux - 如何将变量与斜杠连接为新字符串

linux - 无法在@INC 中找到 CPAN.pm(@INC 包含 :/usr/local/lib/perl5/usr/local/share/perl5

python - Lark 解析器语法适用于 Earley,但不适用于 LALR

python - 加载和连接 numpy 数组

php - 在 Ubuntu Server 14.04 上安装了 Nginx,但无法在 html 文件夹中创建任何文件?

linux - 仅针对错误消息自定义带有前缀的命令响应