【发布时间】:2013-02-13 21:47:24
【问题描述】:
这可能是一个非常愚蠢的问题,但我正在测试一个我编写的包含一些脚本的 python 包。
我做了以下顺序:
- 使用 setup.py 创建了一个分发版
- 使用 virtualenv 创建了一个虚拟环境,
- 称为“activate.bat”
- 使用 pip 安装了我的包(通过提供 .zip 文件的路径) 事情似乎奏效了,只是我不知道如何运行我的脚本。如果我尝试运行 example.py,我会收到消息(我使用的是 Windows):
'example.py' 未被识别为内部或外部命令, 可运行的程序或批处理文件。
除了原始 .zip 文件外,我没有看到任何证据表明该文件存在于任何地方。那么如何运行呢?
[更新] 我查了一下,脚本文件不在虚拟环境目录的任何地方。
setup.py 文件如下所示:
from distutils.core import setup
setup(name='Fixedwidth',
version='1.0',
description='Parser for fixed-width records',
author='Daryl McCullough',
author_email='dmccullough@decisionpatterns.com',
package_dir={'fixedwidth':'lib'},
packages=['fixedwidth', 'fixedwidth.profiling'],
scripts=['test/example.py', 'test/unittest.py']
)
【问题讨论】:
-
假设您的 pacakge 中的脚本位于
bin/目录中,您的脚本已安装到您的 virtualenv 中的bin/目录中。您需要将 virtualenv 中的 bin/ 目录作为 PATH 环境变量的一部分。 -
如果在bin/或Scripts/目录下没有看到你的example.py文件,那么你需要调整你的setup.py,见docs.python.org/2/distutils/…
-
文件 example.py 不在 Scripts 目录中(在 windows 上,没有 bin 目录)。我已经包含了上面的 setup.py 文件。)
标签: python virtualenv pip setup.py