Entornos Virtuales y Paquetes en Python 2.7 y 3.x

Uno de los problemas de desarrollar con Python es el poder manejar proyectos con diferentes versiones y diferentes dependencias así como poder recrear ese entrono en diferentes PC y una manera de poder hacerlo de forma sencilla es utilizar entornos virtuales. Los entornos virtuales es un espacio separado para nuestra aplicación y nos permite instalar dependencias sin la necesidad de instalarlas en el sistema operativo, lo que tiene una enorme