Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Yidu en 22 Agosto 2021, 16:08 pm



Título: ¿Cómo trabajar con varias versiones de Python a la vez? (Sin entornos virtuales)
Publicado por: Yidu en 22 Agosto 2021, 16:08 pm
Hola!

Pues esa es la pregunta. Aunque he visto por algunos sitios el uso de entornos, yo busco algo mas "artesano". Es decir, usar un par o tres de versiones de Python en Windows. Pero como comento, sin entornos virtuales y anacondas varias.

Solía utilizar la versión 3.7.2, y claro, al instalar la 3.9.x me da algún error como el mapeo con conjuntos. Pronto sale la 3.10 con el famoso match. Y claro, me hace gracia tenerlo. No suelo cambiar de versiones, como comento, tenia bastante tiempo instalada la 3.7.2.

Por lo que he leído bastaría nombrar los directorios como /python37 y /python39 y supongo modificar el path. Allí me surgen las dudas, ya que si instalamos un módulo con pip ¿En que versión se instala?

En tema de no querer instalar anaconda, es que es muy pesado para mi ordenador. Aparte, muchas de las cosas que trae, ni las voy a usar. Y los entornos virtuales tampoco me convencen en exceso. Solo quiero un par de "Pythones" y poder escoger de manera manual la versión. Saludos!


Título: Re: ¿Cómo trabajar con varias versiones de Python a la vez? (Sin entornos virtuales)
Publicado por: engel lex en 22 Agosto 2021, 18:07 pm
 :huh:

te quieres complicar la vida sin necesidad


Título: Re: ¿Cómo trabajar con varias versiones de Python a la vez? (Sin entornos virtuales)
Publicado por: #!drvy en 23 Agosto 2021, 01:05 am
Mencionas anaconda pero no dices nada de pyenv... es bastante liviano y hace precisamente lo que tu quieres.

https://github.com/pyenv/pyenv
https://github.com/pyenv-win/pyenv-win


Saludos


Título: Re: ¿Cómo trabajar con varias versiones de Python a la vez? (Sin entornos virtuales)
Publicado por: DarK_FirefoX en 26 Agosto 2021, 15:03 pm
¿Que SO utilizas?

En mi caso, utilizo Windows, y lo que hacía (ahora uso virtual environments) antes es modificar el PATH para decidir que python utilizar. Por ejemplo, digamos que quiero tener Python 3.6 y Python 3.7 instalado, e instalé primero el Python 3.7, por lo tanto voy a tener en el PATH lo siguiente:

Citar
\AppData\Local\Programs\Python\Python37\
\AppData\Local\Programs\Python\Python37\Scripts\

Luego, instalo el Python 3.6 y en el PATH voy a tener:

Citar
\AppData\Local\Programs\Python\Python36\
\AppData\Local\Programs\Python\Python36\Scripts\
\AppData\Local\Programs\Python\Python37\
\AppData\Local\Programs\Python\Python37\Scripts\

Por lo tanto al ejecutar

Código
  1. python

Voy a tener corriendo el Python 3.6. Si quiero correr el Python 3.7, entonces subo las entradas relacionadas con el Python 3.7 hacia arriba.

Citar
\AppData\Local\Programs\Python\Python37\
\AppData\Local\Programs\Python\Python37\Scripts\
\AppData\Local\Programs\Python\Python36\
\AppData\Local\Programs\Python\Python36\Scripts\

Y entonces esto correrá Python 3.7.

Recuerda reiniciar la consola para que vuelva a leer las variables. Y respondiendo tu pregunta, si utilizas
Código
  1. pip install ABC

va a instalar ABC en el Python que este corriendo.

Salu2s.