CursosEmpresasBlogLiveConfPrecios

¿Qué es un ambiente virtual?

Clase 9 de 20 • Curso de Python: PIP y Entornos Virtuales

Clase anteriorSiguiente clase

Contenido del curso

Introducción
  • 1
    Python en tu propio entorno de desarrollo local

    Python en tu propio entorno de desarrollo local

    03:26
  • 2
    Instalación en Windows (WSL) y Linux

    Instalación en Windows (WSL) y Linux

    06:54
  • 3
    Instalación en Mac

    Instalación en Mac

    06:02
  • 4
    Python con VSCode

    Python con VSCode

    04:25
  • 5
    Python con Git y GitHub

    Python con Git y GitHub

    08:23
  • 6
    Flujo de trabajo en Python

    Flujo de trabajo en Python

    07:36
PIP y Entornos Virtuales
  • 7
    ¿Qué es pip?

    ¿Qué es pip?

    12:45
  • 8
    Gráficas en Python con PIP

    Gráficas en Python con PIP

    12:49
  • 9
    ¿Qué es un ambiente virtual?

    ¿Qué es un ambiente virtual?

    04:54
  • 10
    Usando entornos virtuales en Python

    Usando entornos virtuales en Python

    09:36
  • 11
    requirements.txt

    requirements.txt

    22:40
Práctica
  • 12
    Solicitudes HTTP con Requests

    Solicitudes HTTP con Requests

    11:13
  • 13
    Pandas

    Pandas

    08:37
  • 14
    Python para Backend: web server con FastAPI

    Python para Backend: web server con FastAPI

    10:48
Python en contenedores de Docker
  • 15
    ¿Qué es Docker?

    ¿Qué es Docker?

    02:25
  • 16

    Instalación de Docker en Windows, macOS y Ubuntu

    01:35
  • 17
    Dockerizando scripts de Python

    Dockerizando scripts de Python

    16:36
  • 18
    Docker para el día a día: automatizando la vinculación de archivos

    Docker para el día a día: automatizando la vinculación de archivos

    04:29
  • 19
    Dockerizando web services

    Dockerizando web services

    05:54
Próximos pasos
  • 20
    ¿Cómo continuar tu carrera profesional con Python?

    ¿Cómo continuar tu carrera profesional con Python?

    01:41
    Yuli Alexandra Pulido Castañeda

    Yuli Alexandra Pulido Castañeda

    student•
    hace 3 años

    Hola Chicos! :D Instalar a nivel global puede causar distintos problemas al momento de manejar diferentes proyectos, por ejemplo para algunos proyectos necesitaras otro tipo de version, libreria o modulos y para solucionar esto se creo un ambiente virtual en python el cual encapsula cada proyecto y no lo deja de forma compartida.

    Captura de Pantalla 2022-10-21 a la(s) 12.52.15 a.m..png
    Captura de Pantalla 2022-10-21 a la(s) 12.57.43 a.m..png
      Sergio Andrés Piratoba Forero

      Sergio Andrés Piratoba Forero

      student•
      hace 2 años

      Genial!!!!

      Juan R. Vergara M.

      Juan R. Vergara M.

      student•
      hace 2 años

      Gracias 🥇

    Michelle Verano

    Michelle Verano

    student•
    hace 3 años

    Para los que apenas comienzan, esto puede parecer contra intuitivo, porque es logico pensar, bueno, pero que tanto puede cambiar, de una version a otra, igual todo se programa de la misma manera, son los mismos comandos, siempre utilizo la misma manera de programar, etc... Pero si hay un gran problema, aunque no lo veamos a simple vista, pero la manera como configuramos un proyecto, puede ser muy diferente a como configuermos un segundo y asi sucesivamente, que sucede con esto, que las versiones de las librerias puedes ser diferentes, y si es cierto que no cambia la manera como programamos, si cambia la manera como estas pueden estar distribuidas en el codigo, y causas posteriores problemas. Y segundo, que apesar que sea un poco mas demorado hacer todo el proceso de crear entornos virtuales, si es mejor y mucho mas ordenado, para que sepamos exactamente como esta ubicado todo en nuestro computador, y posteriormente en Github o Gitlab.

      Jeinfferson Bernal G

      Jeinfferson Bernal G

      student•
      hace 3 años

      Gracias por la aclaracion.

      Patricio Sánchez Fernández

      Patricio Sánchez Fernández

      student•
      hace 2 años

      Gracias, Michelle. No tenía idea de la trascendencia.

    Benjamín Cortés

    Benjamín Cortés

    student•
    hace 3 años

    Les dejo un resumen de qué son los entornos / ambientes virtuales y cuáles son los beneficios cuando lo comparamos con instalaciones de forma local 🌐vs🖥️ _

    --

    Los entornos virtuales son una forma de crear un sistema operativo virtual dentro de otro sistema operativo. Esto permite a un usuario tener varios sistemas operativos diferentes en un mismo equipo físico, lo que puede ser muy útil en situaciones en las que es necesario utilizar diferentes aplicaciones o tecnologías que requieren entornos diferentes

    --

    • Permiten utilizar varios sistemas operativos en un mismo equipo físico
    • Permiten instalar y utilizar diferentes aplicaciones y tecnologías de manera segura, sin tener que hacer cambios permanentes en el sistema operativo principal
    • Pueden ser fácilmente movidos o copiados, lo que significa que pueden ser utilizados en diferentes equipos o compartidos con otros usuarios
    • También pueden ser fácilmente respaldados y restaurados en caso de que se produzca un problema, lo que puede ayudar a prevenir la pérdida de datos o el tiempo de inactividad
    • Ofrecen una forma conveniente y segura de utilizar diferentes aplicaciones y tecnologías en un mismo equipo

    -- En resumen, los entornos virtuales ofrecen una forma conveniente y segura 🔒 de utilizar diferentes aplicaciones y tecnologías en un mismo equipo, lo que puede ser muy útil para muchos usuarios y situaciones diferentes

    Gibran Alonso Pérez Favela

    Gibran Alonso Pérez Favela

    student•
    hace 3 años

    recomiendo ver el curso de entorno de trabajo con ambientes virtuales usando conda, y así podrán conocer un poco mas la idea. https://platzi.com/cursos/jupyter-notebook/

    Erick Alay

    Erick Alay

    student•
    hace 3 años

    Venv y minecraft (analogía)

    Una forma en la que entendí los ambientes virtuales fue viéndolo como un Launcher de minecraft. Si viste bien minecraft.

    Analogía

    Imagina que quieres jugar minecraft en una versión específica porque en esa versión hay algo que quieres probar, esta versión esta aislada del resto de versiones, en un Launcher tienes todas las versiones disponibles y debes escoger una que quieras jugar…


    Esto es muy parecido a un entorno virtual (venv => virtual enviroment) ya que este es un espacio aislado con sus propias dependencias, con diferentes versiones de paquetes.

    Porqué tener diferentes versiones de paquetes?

    • Siguiendo con la analogía en minecraft diferentes versiones tienen diferentes cosas que agregan o quitan, puede que quieras conectarte a un server pero en el server solo usan la version 1.8.8 o quieres instalar mods…

    • Para un ambiente virtual los paquetes que se instalan tienen diferentes características, puede que quieras algo de una versión específica, o puede que tu código solo funcione en esa versión.

    Las analogías no son siempre acertadas, es una relación semejante entre algo distinto, si has jugado minecraft seguramente le encuentras más sentido 😄

    Si instalaste TLauncher, desinstalalo!!, ese Launcher viene con un spyware...

      Diego Quintana Hernández

      Diego Quintana Hernández

      student•
      hace 3 años

      Muchas gracias, me fue de mucha utilidad

    Daniel Dobles

    Daniel Dobles

    student•
    hace 2 años
    1. ¿Qué es un entorno virtual en Python?

      Un entorno virtual (o ambiente virtual) en el contexto de Python es una herramienta que te permite crear un espacio aislado en tu sistema donde puedes instalar paquetes y dependencias de Python sin afectar el entorno global de Python en tu máquina.

    2. Beneficios de los entornos virtuales:

      • Aislamiento: Cada entorno virtual es independiente y aísla las bibliotecas y paquetes que instalas en él.
      • Gestión de dependencias: Facilita la especificación de dependencias necesarias para tu proyecto en un archivo requirements.txt.
      • Evitar conflictos: Previene que las bibliotecas de un proyecto afecten a otros proyectos o al entorno global de Python.
      • Limpieza y organización: Permite una gestión ordenada y eliminación de entornos virtuales no utilizados.
    Miguel Angel Reyes Moreno

    Miguel Angel Reyes Moreno

    student•
    hace 3 años

    Lo genial de PyCharm es que te crea por defecto cada proyecto con su propio ambiente virtual :D

      Juan Pablo Lopez Fracaro

      Juan Pablo Lopez Fracaro

      student•
      hace 2 años

      En algunas condiciones eso me ha traido problemas, no se si es que no lo he sabido configurar correctamente pero me creeaba más de un entorno virtual por proyecto

    Roberto Jassiel Montes Gutierrez

    Roberto Jassiel Montes Gutierrez

    student•
    hace 3 años

    Los ambientes virtuales se crean por proyecto por cada modulo que estemos haciendo?

      José B. Méndez Padín

      José B. Méndez Padín

      student•
      hace 3 años

      Se crean por cada proyecto.

    Bryan Carvajal

    Bryan Carvajal

    student•
    hace 3 años

    Para instalar una version diferente de una libreria usamos el codigo pip3 install <libreria>==<version>

    Diego Quintana Hernández

    Diego Quintana Hernández

    student•
    hace 3 años

    Para todos los que crean que esto no es tan importante

    De verdad, usen entornos virtuales en cada proyecto que hagan, su YO del futuro se los va a agradecer.

    Yo usé por años Python a como diosito me daba a entender y ahora que estoy tomando estos cursos es cuando me doy cuenta de todos las malas prácticas que tenía y esto en particular les va a ahorrar muchos problemas después

    Ian Cristian Ariel Yané

    Ian Cristian Ariel Yané

    student•
    hace 3 años

    Si alguno estava usando git bash, para activar el entorno virtual desde windows:

    https://docs.python.org/es/3/tutorial/venv.html

    José Carlos Vielman Mallada

    José Carlos Vielman Mallada

    student•
    hace 2 años

    ### Pasos para realizar un ambiente virtual

    1. Primer punto, verificar dónde se está ejecutando python mediante el comando which python3. Verificar también which pip3

    2. Si te encuentras en linux o wsl, realizar el siguiente comando en la terminal:

    sudo apt install \[-y] python3-venv

    Esto instalará la opción para realizar entornos virtuales

    3. Luego, en cada carpeta, en cada proyecto, podemos crear el entorno virtual mediante el siguiente comando:

    python3 -m venv \[nombre del entorno virtual]

    El nombre puede ser el que quieras. Normalmente se lo coloca *env*.

    4. Una vez ejecutado el comando nos aparecerá una carpeta el nuestro proyecto con el nombre elegido. Ahora debemos activarlo:

    source \[nombre del entorno virtual]/bin/activate

    5. En alguna parte de la terminal nos saldrá un indicativo de que nos encontramos en el entorno virtual ingresado

    6. Podemos verificar dónde se está ejecutando python y pip3. Nos saldrá que se ejecuta desde nuestros ambientes virtuales

    7. Podemos instalar los módulos que necesitamos para nuestro proyecto. *Observación: las librerías instaladas globalmente no aparecerán disponibles*

    pip3 install \[modulo o modulo==x.x.x]

    8. Para verificar los módulos instalados

    pip3 list o pip3 freeze

    9. Para salir del entorno virtual

    deactivate
    Jhon Freddy Tavera Blandon

    Jhon Freddy Tavera Blandon

    student•
    hace 3 años

    como crear un ambiente virtual ​

    • PAGvenvWhat
    python3 -m venv nombre_del_ambiente
    • Estnombre_del_ambienteque contactivateQue sebindel ambiente virtual. en ventanas,
    nombre_del_ambiente\Scripts\activate.bat
    source nombre_del_ambiente/bin/activate
    Randhal Smith Ramirez Orozco

    Randhal Smith Ramirez Orozco

    student•
    hace 3 años

    La realidad es que todo el manejo de dependencias se puede salir de las manos si no se usa un ambiente virtual.

    Inclusive yo recomendaría usar la versión de python más actual en cada proyecto, porque la realidad es que cuando python o la versión en cuestión que se usa para desarrollar queda sin soporte, toca hacer revisión y refactoring del código.

    William Schnaider Torres Bermon

    William Schnaider Torres Bermon

    student•
    hace 4 meses

    Why Use Virtual Environments?

    ✅ Avoid dependency conflicts between projects. ✅ Reproduce environments easily (with requirements.txt). ✅ Keep your global Python installation clean. ✅ Work with different Python versions and package versions simultaneously.

    William Schnaider Torres Bermon

    William Schnaider Torres Bermon

    student•
    hace 4 meses

    What is a Virtual Environment?

    • A virtual environment is an isolated Python environment that allows you to install and manage packages independently from the global Python installation.
    • Each project can have its own dependencies and versions, preventing conflicts between projects.

    👉 Without a virtual environment, all packages are installed system-wide, which can quickly lead to version conflicts.

    Jaime Escobedo Vargas

    Jaime Escobedo Vargas

    student•
    hace 2 años

    Hola, cuando hago

    pip freeze

    Me aparecen una librerías y cuando hago

    pip3 freeze

    aparecen otras, ¿a que se debe y a cuál debo de hacer caso?. Estoy en Mac

      Ricardo Daniel Baró Soto

      Ricardo Daniel Baró Soto

      student•
      hace 2 años

      Hola eso se debe a que pip hace referencia a los paquetes instalados de python2 y pip3 a los de python3, en caso que no tener python2 pip hace referencia a los paquetes del python3. En mi caso uso linux y mi ubuntu tenía por defecto instalado python2 y python3 por tanto hay diferencia entre pip y pip3, en tu caso debe ocurrir algo parecido.

    Adrián Felipe Rueda Castellanos

    Adrián Felipe Rueda Castellanos

    student•
    hace 3 años

    Profe. Qué diferencia habría entre crear mi ambiente virtual con Conda a si lo hago con pip?

      Pablo Garrido Hernandez

      Pablo Garrido Hernandez

      student•
      hace 3 años

      Ambos pip y conda son herramientas populares para crear y administrar ambientes virtuales en Python, la diferencias pueden ser las siguientes:

      pip es el gestor de paquetes estándar para Python, y se utiliza principalmente para instalar paquetes de Python

      conda, por otro lado, es un gestor de paquetes más general que puede instalar paquetes de Python y también paquetes de otros lenguajes como R y C ++, está diseñado para funcionar en diferentes sistemas operativos y arquitecturas, lo que significa que puede instalar y administrar paquetes que son específicos de una plataforma determinada. Por el contrario, pip es específico de Python y puede tener problemas para instalar algunos paquetes que dependen de bibliotecas del sistema operativo.

      Entornos virtuales: conda puede crear entornos virtuales completos que incluyen una instalación de Python y todas las bibliotecas necesarias para una aplicación. pip, por otro lado, solo puede instalar bibliotecas de Python y no puede configurar un entorno virtual completo.

      En resumen, si se trabaja en un proyecto de Python, pip es la herramienta recomendada para administrar las bibliotecas de Python. Sin embargo, si se trabaja con paquetes que no son de Python o se necesita configurar entornos virtuales completos, conda es una opción. En cualquier caso, ambas herramientas son útiles y se pueden usar juntas para obtener lo mejor de ambas.

    Sebastián Olivares

    Sebastián Olivares

    student•
    hace 2 años

    ¿Si quiesiera manejar diferentes paquetes y ademas versiones de Python como se podría hacer? ¿Necesitaría exclusivamente Docker? ¿O se puede con entornos virtuales?

    Gracias!

    Julio Coronado

    Julio Coronado

    student•
    hace 3 años

    Y como se quitan todos los modulos de toda la maquina?

      Pablo Garrido Hernandez

      Pablo Garrido Hernandez

      student•
      hace 3 años

      No sería correcto eliminar todos los modulos ya que algunos de ellos son esenciales para el correcto funcionamiento del intérprete de Python y de otros programas que dependen de ellos. Además, eliminar módulos de Python podría afectar a la estabilidad del sistema.

      Puedes utilizar el siguiente para eliminar algun paquete

      pip uninstall nombre-del-paquete

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads