¿Un script de Python que activa el virtualenv y luego ejecuta otro script de Python?

En Windows Vista, necesito un script que inicie el script de activate (para activar el virtualenv) en:

 C:\Users\Admin\Desktop\venv\Scripts\ 

Y luego, en el entorno virtual, se inicia el manage.py runserver en la carpeta:

 C:\Users\Admin\Desktop\helloworld\ 

¿Cómo debería hacer? ¿Qué módulos debo usar?

Puede activar su virtualenv y luego iniciar el servidor usando un archivo bat. Copie este script en un archivo y guárdelo con la extensión .bat (por ejemplo, runserver.bat)

 @echo off cmd /k "cd /d C:\Users\Admin\Desktop\venv\Scripts & activate & cd /d C:\Users\Admin\Desktop\helloworld & python manage.py runserver" 

Luego, solo puede ejecutar este archivo bat (simplemente haga doble clic) para iniciar el servidor

runserver.bat:

  CALL [your path]\Scripts\activate.bat python manage.py runserver 

Si desea llamar directamente a Python virtual, puede hacer algo como esto:

  C:\Users\Admin\Desktop\venv\Scripts\bin\python.exe manage.py runserver 

Verifique la ubicación de python.exe en su carpeta virtualenv – no recuerde cómo está fuera de mi cabeza. Este Python se asocia con el virtualenv y utiliza sus site-packages predeterminada.

En lugar de usar cadenas, puede usar un símbolo de intercalación (^) como se describe en esta pregunta: Comandos largos divididos en varias líneas en el archivo de proceso por lotes de Windows Vista (.bat)

P.ej

 cmd /k cd path/to/activate ^ activate.bat pip uninstall --yes package ^ pip install git+https://git.server.com/user/project@remote/branch ^ deactivate 

abrirá un venv y desinstalará y reinstalará una twig de un repository Git. Este es un patrón útil para automatizar la implementación de código en un venv.