我如何利用 PYTHONPATH?当我尝试在路径中运行脚本时,该文件不是
成立。当我 cd 到保存脚本的目录时,脚本将运行。那么有什么好处
Python路径?
$ echo $PYTHONPATH
:/home/randy/lib/python
$ tree -L 1 '/home/randy/lib/python'
/home/randy/lib/python
├── gbmx_html.py
├── gbmx.py
├── __init__.py
├── __pycache__
├── scripts
└── yesno.py
$ python gbmx.py -h
python: can't open file 'gbmx.py': [Errno 2] No such file or directory
$ cd '/home/randy/lib/python'
cd 到文件目录后,它运行..
$ python gbmx.py -h
usage: gbmx.py [-h] [-b]
为什么我不能使用 PYTHONPATH?
我想你有点困惑。 PYTHONPATH 设置搜索路径输入python 模块,而不是像您尝试的那样执行它们。
PYTHONPATH 增加模块文件的默认搜索路径。这
格式与 shell 的 PATH 相同:一个或多个目录
由 os.pathsep 分隔的路径名(例如 Unix 上的冒号或分号
在 Windows 上)。不存在的目录将被默默忽略。
除了普通目录之外,各个 PYTHONPATH 条目还可以
引用包含纯 Python 模块的 zip 文件(源代码或
编译形式)。扩展模块无法从 zip 文件导入。
默认搜索路径取决于安装,但通常
以 prefix/lib/pythonversion 开头(参见上面的 PYTHONHOME)。这是
始终附加到 PYTHONPATH。
前面的搜索路径中会插入一个额外的目录
PYTHONPATH,如上面接口选项中所述。搜索
路径可以在Python程序中作为变量进行操作
系统路径。
http://docs.python.org/2/using/cmdline.html#envvar-PYTHONPATH http://docs.python.org/2/using/cmdline.html#envvar-PYTHONPATH
您正在寻找的是 PATH。
export PATH=$PATH:/home/randy/lib/python
但是,要将 python 脚本作为程序运行,您还需要设置shebang http://en.wikipedia.org/wiki/Shebang_%28Unix%29第一行为Python。像这样的东西应该有效:
#!/usr/bin/env python
并赋予其执行权限:
chmod +x /home/randy/lib/python/gbmx.py
那么你应该能够简单地运行gmbx.py
来自任何地方。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)