Básicamente quiero obtener un control del intérprete de python para poder pasar un archivo de script para ejecutarlo (desde una aplicación externa).¿Cómo obtener la ubicación python.exe mediante programación?
Respuesta
Esto funciona en Linux, ¿quizás en Windows también?
>>> import sys
>>> print sys.executable
/usr/bin/python
Creo que depende de cómo instaló Python. Tenga en cuenta que puede tener múltiples instalaciones de Python, lo hago en mi máquina. Sin embargo, si se instala mediante un MSI de una versión de Python 2.2 o superior, creo que crea una clave de registro, así:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths \ python.exe
que da este valor en mi máquina:
C: \ Python25 \ python.exe
que acaba de leer la clave de registro para obtener la ubicación.
Sin embargo, puede instalar Python a través de un modelo similar a xcopy que puede tener en un lugar arbitrario, y solo tiene que saber dónde está instalado.
Si está en las rutas de la aplicación, ni siquiera necesita saber la ubicación, ¿verdad? ;) – Gleb
Mirar en el registro no es muy útil, porque no sabe si está ejecutando el python del que está hablando el del registro. – GreenAsJade
sys.executable no es confiable si se trabaja en un entorno python incrustado. Mis sugerencias es a deducirlo de
import os
os.__file__
- 1. ¿Cómo puedo obtener la latitud, longitud de una ubicación mediante programación o mediante una API
- 2. C# cambiar la ubicación de un objeto mediante programación
- 3. Obtener página actual mediante programación
- 4. ¿Cómo obtener privilegios de root mediante programación?
- 5. ¿Cómo obtener velocidad de enlace mediante programación?
- 6. Activar los proveedores de ubicación mediante programación en Android
- 7. Obtener la altura de la barra de navegación mediante programación
- 8. Cómo reiniciar mediante programación?
- 9. Cómo ejecutar NUnit mediante programación
- 10. Cómo obtener opciones personalizadas mediante programación en Magento
- 11. ¿Cómo obtener OnClick() desde botones agregados mediante programación?
- 12. ¿Obtiene la velocidad de enlace mediante programación?
- 13. Encender la pantalla mediante programación
- 14. Cómo agregar/quitar la referencia mediante programación?
- 15. Cómo calcular la integral indefinida mediante programación
- 16. Cómo refrescar la disposición lineal mediante programación
- 17. IPhone/IPad: ¿Cómo obtener ancho de pantalla mediante programación?
- 18. Cómo crear URLs mediante programación con AngularJS
- 19. ¿Cómo obtener el proveedor de USB y la información del producto mediante programación en Linux?
- 20. Cómo agregar una referencia mediante programación
- 21. Obtener resolución de pantalla mediante programación en OS X
- 22. mediante programación en C#
- 23. cómo obtener la ubicación del módulo
- 24. Cómo obtener la ubicación El directorio padre
- 25. Recuperación mediante programación de la ubicación del archivo de registro IIS en una aplicación ASP.NET
- 26. ¿Cómo obtengo la altura de UINavigationBar.navigationItem mediante programación?
- 27. ¿Cómo se selecciona mediante programación la fila superior de JQGrid?
- 28. ¿Cómo personalizar la perspectiva de eclipse mediante programación?
- 29. Cambiar la fecha del sistema mediante programación
- 30. crear el archivo XML mediante programación
@Bhargav Rao: ¿cómo puede esta cuestión, que se le pidió 1 año _antes_ la pregunta que se supone que es un duplicado de, ser un duplicado de la misma? Es al revés. – mhawke
@mhawke El otro tenía más vistas que esta y estaba mejor redactado. Por lo tanto, lo engañé en la dirección inversa. TBH, ambos dicen lo mismo, así que incluso podemos marcar para la fusión. –
@BhargavRao: sí, está mejor escrito y es probable que el título sea el responsable. También la respuesta aceptada es mejor y (ahora) incluye un enlace a la documentación, por lo que, en general, creo que tienes razón. – mhawke