繁体   English   中英

没有完整路径,为什么我安装的(在虚拟环境中的Windows上)python脚本无法运行?

[英]Why doesn't my installed (on Windows in a virtual environment) python script work without a full path?

我编写了一个小型python程序包,然后使用pip将其安装在我的Python 2.7虚拟环境中。 我的程序包包含一个命令行实用程序脚本,我们称其为my_script.py ,它通过import mypkg调用使用了程序包中的功能。 该脚本已成功安装到我的virtualenv脚本文件夹中,但是在激活我的virtualenv之后,如果我调用

(my_env) > python my_script.py --help

我收到错误:

python: can't open file 'my_script.py': [Errno 2] No such file or directory

如果我打电话

(my_env) > my_script.py --help

我得到错误

Traceback (most recent call last): File "C:\\PyEnvs\\my_env\\Scripts\\my_script.py", line 1, in <module> import mypkg ImportError: No module named mypkg

(即使mypkg清楚地显示在pip list )。 只有我打电话

python C:\\PyEnvs\\my_env\\Scripts\\my_script.py --help

脚本是否按预期工作。 我是在做错什么,还是Windows上的virtualenv不足?

(还要注意, C:\\PyEnvs\\my_env\\Scripts在我的%PATH%中,即使C:\\PyEnvs\\my_env\\Scripts也在我的%PYTHONPATH%中,我也会得到相同的行为。)

> python my_script.py

仅当当前目录在您的PATH环境变量中时才起作用。 如果不是,则必须完全或相对于工作目录将其指定为un。

所以你可以这样做:

> python .\myscript.py

或更新您的PATH并添加“。” 用于当前目录。 http://en.wikipedia.org/wiki/PATH_(变量)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM