Leer en inglés Editar

Compartir a través de


Preguntas más frecuentes sobre el uso de Python en Windows.

Problemas al instalar un paquete con la instalación de PIP

Hay una serie de motivos por los que se puede producir un error en la instalación. En muchos casos, lo mejor que puede hacer para solucionarlo es ponerse en contacto con el desarrollador del paquete.

Una causa habitual de los problemas es intentar realizar una instalación en una ubicación para la que no tiene permiso de modificación. Por ejemplo, la ubicación de instalación predeterminada podría requerir privilegios administrativos, pero de forma predeterminada Python no los tendrá. La mejor solución es crear un entorno virtual y realizar la instalación allí.

Algunos paquetes incluyen código nativo que requiere un compilador de C o C++ para la instalación. En general, los desarrolladores de paquetes deben publicar versiones precompiladas, pero a menudo no lo hacen. Es posible que algunos de estos paquetes funcionen si instalas Build Tools para Visual Studio y seleccionas la opción de C++. Sin embargo, en la mayoría de los casos, deberás ponerte en contacto con el desarrollador de paquetes.

Seguir la explicación en Stack Overflow

Problemas al instalar PIP con WSL

Al instalar un paquete (como Flask) con PIP en el Subsistema de Windows para Linux (WSL o WSL2), por ejemplo python3 -m pip install flask, es posible que se produzca un error similar al siguiente:

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))
after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection
object at 0x7f655471da30>: Failed to establish a new connection: [Errno -3]
Temporary failure in name resolution')': /simple/flask/

Al investigar este problema, es posible que vaya en varias direcciones y ninguna de las cuales sea particularmente productiva en una distribución WSL Linux. (Advertencia: en WSL no intente editar resolv.conf, ese archivo es un vínculo simbólico y modificarlo es abrir una caja de pandora). A menos que esté ejecutando un firewall posventa, es probable que la solución consista simplemente en volver a instalar PIP:

sudo apt -y purge python3-pip
sudo python3 -m pip uninstall pip
sudo apt -y install python3-pip --fix-missing

*Más información sobre el repositorio de productos de WSL en GitHub. Gracias a nuestra comunidad de usuarios por colaborar en este problema en los documentos.

¿Qué es py.es?

Puedes acabar con varias versiones de Python instaladas en la máquina porque trabajas en diferentes tipos de proyectos de Python. Dado que todas estas usan el comando python, puede que no sea obvia la versión de Python que usas. Como norma, te recomendamos que uses el comando python3 (o python3.7 para seleccionar una versión específica).

El iniciador de py.exe seleccionará automáticamente la versión más reciente de Python que hayas instalado. También puedes usar comandos como py -3.7 para seleccionar una versión determinada o py --list para ver qué versiones se pueden usar. SIN EMBARGO, el iniciador de py.exe solo funcionará si usas una versión de Python instalada de python.org. Al instalar Python desde Microsoft Store, el comando py no se incluye. Para Linux, macOS, WSL y la versión de Microsoft Store de Python, debes usar el comando python3 (o python3.7).

¿Por qué se abre Microsoft Store al ejecutar python.exe?

A fin de ayudar a los nuevos usuarios a encontrar una instalación adecuada de Python, hemos agregado una combinación de teclas en Windows que te dirigirá directamente a la versión más reciente del paquete de la comunidad publicado en Microsoft Store. Este paquete se puede instalar fácilmente sin permisos de administrador y reemplazará los comandos predeterminados python y python3 por los reales.

Si ejecutas el archivo ejecutable de acceso directo con cualquier argumento de la línea de comandos, se devolverá un código de error para indicar que Python no se instaló. De este modo, se evita que los scripts y los archivos por lotes abran la aplicación Store cuando dicha apertura probablemente no esté prevista.

Si instalas Python con los instaladores de python.org y seleccionas la opción "Agregar a PATH", el nuevo comando python tendrá prioridad sobre la combinación de teclas. Ten en cuenta que hay otros instaladores que pueden agregar python con una prioridad inferior respecto a la combinación de teclas integrada.

Puedes deshabilitar las combinaciones de teclas sin instalar Python si abres "Manage app execution aliases" ("Administrar alias de ejecución de la aplicación") desde Inicio, buscas las entradas de Python "Instalador de aplicación" y las cambias a "Desactivado".

¿Por qué no funcionan las rutas de acceso a archivos en Python cuando las copias y las pegas?

Las cadenas de Python usan "secuencias de escape" para los caracteres especiales. Por ejemplo, para insertar un carácter de línea nueva en una cadena, deberías escribir \n. Dado que las rutas de acceso a archivos en Windows usan barras diagonales inversas, es posible que algunas partes se conviertan en caracteres especiales.

Para pegar una ruta de acceso como una cadena en Python, agrega el prefijo r. Esto indica que se trata de una cadena raw y que no se usarán caracteres de escape, excepto "\"(es posible que tengas que quitar la última barra diagonal inversa de la ruta de acceso). Así pues, la ruta de acceso podría tener este aspecto: r"C:\Users\MyName\Documents\Document.txt"

Al trabajar con rutas de acceso en Python, te recomendamos que uses el módulo estándar pathlib. De este modo, podrás convertir la cadena en un objeto Path enriquecido que puede realizar manipulaciones de ruta de acceso de forma coherente tanto si usa barras diagonales como barras diagonales inversas, lo que hace que el código funcione mejor en distintos sistemas operativos.

¿Qué es PYTHONPATH?

Python usa la variable de entorno PYTHONPATH para especificar una lista de directorios desde la que se pueden importar los módulos. Cuando se ejecute, puedes inspeccionar la variable sys.path para ver los directorios en los que se realizará la búsqueda cuando importes algo.

Para establecer esta variable desde el símbolo del sistema, usa set PYTHONPATH=list;of;paths.

Para establecer esta variable desde PowerShell, usa $env:PYTHONPATH=’list;of;paths’ justo antes de iniciar Python.

No te recomendamos establecer esta variable de forma global a través de la configuración Variables de entorno, ya que puede que la use cualquier versión de Python en lugar de la que quieras usar.

¿Dónde puedo encontrar ayuda con el empaquetado y la implementación?

Docker: La extensión VSCode te ayuda realizar rápidamente el empaquetado y la implementación con plantillas Dockerfile y docker-compose yml (genera los archivos de Docker adecuados para el proyecto).

Azure Kubernetes Service (AKS) te permite implementar y administrar aplicaciones en contenedores a la vez que escalas recursos a petición.

¿Qué ocurre si necesito trabajar en distintas máquinas?

La extensión Settings Sync te permite sincronizar la configuración de VS Code entre diferentes instalaciones mediante GitHub. Si trabajas en diferentes máquinas, te ayuda a mantener el entorno coherente entre ellas.

¿Qué ocurre si estoy acostumbrado a usar PyCharm, Atom, Sublime Text, Emacs o VIM?

La extensión de VSCode Keymaps puede ayudarte a configurar el entorno para que te resulte más familiar.

¿Cómo se asignan las teclas de método abreviado de Mac a Windows?

Algunos de los botones del teclado y los métodos abreviados del sistema son ligeramente diferentes entre una máquina Windows y una Macintosh. En esta guía de transición de Mac a Windows se tratan los conceptos básicos.