在python的virtualenv中运行命令

2024-10-05 22:42:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试在python2virtualenv下运行python脚本。如何通过批处理脚本/python脚本运行它

我已经安装了python2和python3,还创建了virtualenv。我尝试通过python脚本调用它,但它甚至没有进入virtualenv。然后我尝试了下面的批处理脚本。但它只是执行了第一行代码。i、 只是激活虚拟环境。但是其他的线路没有被执行

我甚至尝试在bat文件中分别执行批处理脚本的第一行,然后使用perl/python调用其他脚本。但都没用

请提供使用python脚本或 一个批处理文件,我需要通过perl/python运行它

我使用的批处理文件:

C:\venv-2\Scripts\activate
pushd <some path>
python test.py
deactivate

Tags: 文件代码脚本virtualenvvenv虚拟环境scriptspython3
3条回答

直接使用virtualenv的Python解释器:

pushd some_path
c:\venv-2\scripts\python test.py
popd

我得到了批处理文件

C:\venv-2\Scripts\activate & pushd <some path> & python test.py & deactivate

在批处理文件中。并使用perl脚本调用批处理文件

system('start test.bat')

由于没有Windows环境,这是一个不适用于Windows的*nix的答案

与其直接调用venv bin,不如尝试在脚本中激活它。例如:

# my-script.sh

# activate 
source venv/bin/activate

# this should be in the venv
which python3
python3 -c 'print("Hello from python3")'

然后$ bash my-script.sh应该打印出它认为在脚本中使用的python3

另请参阅A Python script that activates the virtualenv and then runs another Python script?,以获得更好的相同想法

相关问题 更多 >