Parece que una actualización de Windows 10 rompió Python de la noche a la mañana. Solo intenté ejecutar python --version devolvió un error de "Permiso denegado". Ninguna de las tres actualizaciones; Parece que KB4507453, KB4506991 o KB4509096 serían los culpables, pero el momento del problema es sospechoso. En lugar de jugar con la reversión, espero que haya una solución más simple que me falta.
Los permisos en python son "-rwxr-xr-x" y no he cambiado nada además de permitir que la actualización de Windows reinicie la máquina después de instalar los parches de anoche.
De acuerdo con la información del sistema, estoy ejecutando 10.0.18362
También debo tener en cuenta que esto sucede ya sea que (intente) ejecutar Python desde git-bash usando "ejecutar como administrador" o no, y si intento usar PowerShell, simplemente abre la tienda de Windows como si la aplicación no estuviera instalada. Estoy pensando que no puede ver el contenido de mi carpeta /c/Users/david/AppData/Local/Microsoft/WindowsApps/ por alguna razón.
También intenté reinstalar Python 3.7.4, pero tampoco ayudó. ¿Hay algo más que debería estar mirando?
Por lo que puedo decir, esto fue causado por un conflicto con la versión de Python 3.7 que se agregó recientemente a la Tienda Windows. Parece que esto agregó dos "talones" llamados python.exe y python3.exe en la carpeta %USERPROFILE%\AppData\Local\Microsoft\WindowsApps , y en mi caso, esto se insertó antes de la entrada de mi ejecutable Python existente en PATH .
Mover esta entrada debajo de la carpeta Python correcta (parcialmente) corrigió el problema.
La segunda parte de corregirlo es escribir manage app execution aliases en el indicador de búsqueda de Windows y deshabilitar las versiones de la tienda de Python por completo.
Es posible que solo necesite hacer la segunda parte, pero en mi sistema hice ambos cambios y todo volvió a la normalidad ahora.
Esto parece ser una limitación en git-bash. La recomendación de usar winpty python.exe funcionó para mí. Consulte Python no funciona en la línea de comando de git bash para obtener información adicional.