Descripción breve
La pregunta no es para preguntar si se necesitan utilizando entornos virtuales, pero cuando se utiliza de Ian Bicking virtualenv ¿cuál es la mejor manera, en su caso, para gestionar entornos de Windows. Si tiene varias ideas, responda varias veces para que se puedan votar las mejores respuestas. ¡Gracias!¿Cuáles son los inconvenientes y las soluciones cuando se utilizan entornos virtuales de Python en Windows?
Antecedentes
Al desarrollar en Python, por lo general trato de usar Mac OS X/bash tanto como sea posible. Sin embargo, siempre hay proyectos en los que me veo obligado a utilizar Windows para soporte de hardware/controladores. Para estos proyectos, tiendo a confiar en el método de "doble clic" para ejecutar los módulos con el python.exe registrado. El uso del "doble clic" es una manera simple de ejecutar múltiples hilos/pruebas al mismo tiempo, sin tener que abrir un nuevo símbolo del sistema, desglosar el directorio necesario, y luego escribir 'python.exe module.py' .
El objetivo final
Me gustaría tener una manera de administrar y utilizar entornos virtuales sin tener que estar en el símbolo del sistema (sólo Windows)
Lista de Deseos
1. Ser capaz para instalar módulos desde cualquier pip (línea de comando) o desde binarios (para aquellos que no pueden ser instalados con pip por cualquier razón).
2. Gestione entornos, con virtualenv.exe, desde una GUI. (Crear, eliminar la lista, activar, etc ...)
Investigación
Hasta ahora he sido capaz de hacer pedazos de mi lista de artículos deseados utilizando diferentes scripts/métodos, pero todavía tienen que encontrar una forma de combinarlos. Estaba planeando combinar la mayoría de estos en una interfaz gráfica de usuario, pero pensé que sería inteligente averiguar si hay una buena razón para , porque esto ya no existe.
La instalación de binarios en un entorno virtual se puede hacer bastante fácil utilizando un script que cambie qué versión de python está registrada en Windows. He estado usando la secuencia de comandos desde hace varios meses con nada más que excelentes resultados. Consulte SO Question
La administración de los entornos aparece en la parte más difícil.
Si usa bash, hay virutalenvwrapper escrito por Doug Hellmann. Lo uso cuando trabajo en Mac OSX y lo recomiendo ampliamente.
Hay un puerto de este esfuerzo en Power Shell encontrado here pero todavía requerirá que se instale una interfaz de símbolo del sistema de un tercero.
Uno de los puertos más únicos en Windows que he visto puertos virtualenvwrapper para batir archivos. No he probado esto, pero aún requeriría el uso del símbolo del sistema. Encontrado here
La función de ayudante más prometedora que he encontrado hasta la fecha está escrita por Justin Driscoll. Si bien el ejemplo exacto de this requeriría el símbolo del sistema, sería trivial convertir esto en algo que podría llamar una GUI de Python. Este era el camino que estaba tomando antes de pensar que debería consultar con las masas sobre la mejor manera de lograr mi objetivo.
Parece que podría utilizar efectivamente archivos .bat para realizar esta tarea, pero supongo que no estoy seguro de lo que quiere decir con "sin tener que estar en el símbolo del sistema". Un archivo de proceso por lotes le permitiría automatizar la entrada de línea de comando, y podría integrarlo con un script de Windows o un archivo JScript si necesitara más funcionalidad. Los ejemplos de uso en la página de Justin Driscoll podrían colocarse en un archivo por lotes que luego podría simplemente hacer doble clic. Sé que no es exactamente una GUI, pero le permitirá centralizar sus parámetros/variables. ¿Es eso en lo que estás pensando? ¿O me he perdido la esencia? –
@ Kit: si no le importa agregar esto como respuesta, está cerca de la funcionalidad que estoy buscando. Agregaré más comentarios cuando sea una respuesta (para que también pueda beneficiar a otros). –