In this article
Cómo instalar Python en macOS
Python es un lenguaje de programación dinámico, interpretado, de propósito general y de alto nivel, que se enfoca en la legibilidad del código. La sintaxis de Python permite a los programadores escribir código con menos pasos que en Java o C++. El lenguaje se creó a finales de la década de 1980, y su implementación comenzó en diciembre de 1989 a cargo de Guido van Rossum. Actualmente, es uno de los lenguajes más populares e influyentes en el desarrollo de software. Para garantizar que el código Python sea seguro y de alta calidad, los desarrolladores pueden usar el verificador de código Python de Snyk para detectar automáticamente vulnerabilidades y problemas en el código. Esta herramienta ayuda a identificar riesgos de seguridad, mantener las mejores prácticas de programación y mejorar el estado general del código. Al integrar las capacidades de análisis del verificador de código Python de Snyk, los desarrolladores pueden escribir aplicaciones Python más seguras con confianza.
La importancia de Python
Python ha sido una parte importante de Google desde los inicios de la empresa y se reconoce por su fácil lectura y sus excelentes principios de diseño. Como dijo en 2007 el creador de Python, Guido van Rossum: «Python es un experimento sobre cuánta libertad necesitan los programadores. Demasiada libertad y nadie puede leer el código de los demás; muy poca y la expresividad está en riesgo».
# Python code is easy to read and understand
def greet(name):
print(f"Hello, {name}!")
greet("Python Developer")Python 2.x frente a Python 3.x
Python 2.x es una versión heredada del lenguaje de programación, mientras que Python 3.x es el estándar actual y orientado al futuro. Las principales diferencias entre estas versiones están en la sintaxis, el uso de la función print, la división de enteros, el manejo de Unicode y el comportamiento de la función range.
Dado que Python 2.x ya no recibe soporte activo, se recomienda encarecidamente a los desarrolladores migrar sus proyectos a Python 3.x. Así podrán acceder a las funciones más recientes, mejoras de rendimiento y una comunidad de desarrolladores más activa.
# print function in Python 2.x
print "Hello, Python 2.x Developer!"
# print function in Python 3.x
print("Hello, Python 3.x Developer!")Python es un lenguaje potente e influyente que desempeña un papel importante en la industria del desarrollo de software. Su simplicidad y legibilidad lo convierten en la opción preferida de muchos desarrolladores. Tanto si estás empezando a programar como si tienes experiencia, Python puede adaptarse a tus necesidades y nivel de conocimientos.
Por qué puede ser complicado instalar Python en macOS
A veces, instalar Python en macOS puede ser una tarea abrumadora. En esta sección, veremos algunos de los desafíos habituales que podrías encontrar al instalar Python en macOS, los problemas con el Python del sistema macOS y la necesidad de usar distintas versiones de Python para diferentes proyectos.
Problemas habituales al instalar Python en macOS
Un problema habitual al instalar Python en macOS es la administración de versiones. macOS incluye una versión de Python preinstalada, pero suele estar desactualizada y el sistema la usa para distintas tareas. Por eso, actualizarla podría causar problemas en el sistema.
Otro desafío es la administración de paquetes. Python cuenta con un amplio ecosistema de bibliotecas y frameworks que se pueden instalar con pip. Sin embargo, administrar estos paquetes en diferentes proyectos y versiones de Python puede ser bastante engorroso. A continuación, puedes ver un ejemplo de lo complicado que puede ser administrar paquetes:
$ python3 -m pip install requestsEn el código anterior, estamos instalando la biblioteca 'requests'. Sin embargo, esta biblioteca se instalará para la versión específica de Python a la que apunta 'python3'. Administrar este tipo de instalaciones puede volverse confuso si tienes varias versiones de Python instaladas.
El problema del Python del sistema macOS
Como mencionamos antes, macOS incluye una versión de Python preinstalada. Esta versión, conocida a menudo como «Python del sistema», es la que usa el sistema operativo para realizar distintas tareas. Actualizarla o modificarla puede provocar inestabilidad en el sistema e incluso interrumpir algunas funciones.
El Python del sistema no suele ser la versión más reciente, así que, como desarrollador, quizá necesites trabajar con versiones más nuevas de Python. Esto significa que debes instalarlas junto con el Python del sistema, lo que puede generar confusión, sobre todo al asegurarte de usar la versión correcta de Python para cada tarea.
Por qué se necesitan distintas versiones de Python para diferentes proyectos
Cada proyecto en el que trabajes podría necesitar una versión distinta de Python. Un proyecto podría funcionar perfectamente con Python 3.6, mientras que otro podría requerir funciones disponibles solo en Python 3.8 o versiones posteriores.
Administrar estas distintas versiones de Python puede ser complicado. Por ejemplo, cuando ejecutas un script de Python, debes asegurarte de que se ejecute con la versión correcta. Esto puede complicarse aún más cuando hay diferentes versiones de bibliotecas en distintos proyectos.
A continuación, puedes ver un ejemplo de cómo especificar la versión de Python para un proyecto:
$ python3.6 my_script.pyEn el código anterior, usamos explícitamente Python 3.6 para ejecutar my_script.py. Pero imagina tener que hacerlo para cada script o cada vez que trabajas en un proyecto distinto. Puedes ver cómo esto puede volverse rápidamente
Distintas formas de instalar Python en macOS
Veamos distintas formas de instalar Python en macOS.
Instalación manual desde python.org
El primer paso para instalar Python manualmente en macOS es descargar el paquete de instalación desde el sitio web oficial de Python, Python.org. Esta es la fuente principal para obtener las versiones más recientes de Python.
Sigue estos pasos para descargar el paquete de instalación de Python:
Abre el navegador web y visita la página de descargas de Python.org.
El sitio web debería detectar automáticamente tu sistema operativo y sugerir la versión más reciente de Python para descargar. Si no lo hace, selecciona «macOS» manualmente y descarga la versión más reciente de Python.
Haz clic en el botón de descarga de la versión más reciente de Python. El archivo normalmente tendrá la extensión
.pkg, que significa «paquete».
Después de descargarlo, deberías encontrar un archivo .pkg de Python en la carpeta Descargas o en la ubicación donde el navegador suele guardar los archivos.
Ejecutar el instalador
Una vez que hayas descargado el paquete de instalación de Python, el siguiente paso es ejecutar el instalador.
Ve a la carpeta Descargas y haz doble clic en el archivo
.pkg.Se iniciará el instalador de Python. Sigue las instrucciones, acepta los términos y condiciones y confirma la ubicación de instalación.
Antes de comenzar a instalar Python en el sistema, el instalador te pedirá la contraseña.
Verificar la instalación
Cuando termine la instalación, verifica que Python se haya instalado correctamente en el sistema.
Para verificar la instalación de Python, debes usar la Terminal:
Abre la Terminal (puedes encontrarla en la carpeta Utilidades, dentro de Aplicaciones, o buscarla con Spotlight).
En la Terminal, escribe el siguiente comando y presiona Enter:
python3 --versionLa Terminal debería mostrar la versión de Python que acabas de instalar, algo como esto:
Python 3.9.6Si la Terminal muestra una versión de Python, significa que Python se instaló correctamente en el sistema.
Actualizar Python en macOS
Si en el futuro necesitas actualizar Python a una versión más reciente, puedes seguir el mismo proceso: descarga el nuevo paquete de instalación de Python desde Python.org y ejecútalo.
Sin embargo, es importante tener en cuenta que Python no sobrescribe las versiones anteriores al instalar una nueva, ya que distintos proyectos pueden requerir distintas versiones de Python. Por lo tanto, tendrás que especificar la versión de Python al ejecutar tus scripts. Por ejemplo, para ejecutar un script con Python 3.9, usarías el comando python3.9 en la Terminal.
Instalación con Homebrew
Homebrew es un sistema de administración de paquetes de software de código abierto que simplifica la instalación de software en Mac OS de Apple y Linux. Su nombre alude a la idea de crear software en Mac según las preferencias del usuario. Creado originalmente por Max Howell, este administrador de paquetes se ha popularizado en la comunidad de macOS como alternativa a la Mac App Store.
Usar Homebrew para instalar Python
Homebrew simplifica el proceso de instalación y administra las actualizaciones por ti, por lo que es una excelente herramienta para desarrolladores y profesionales de DevOps.
Esta es una guía paso a paso para instalar Python en macOS con Homebrew:
Primero, abre la aplicación Terminal. Puedes buscarla con Spotlight o acceder a ella desde la carpeta Utilidades, dentro de la carpeta Aplicaciones.
Si todavía no instalaste Homebrew, puedes hacerlo ejecutando el siguiente comando en la Terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"3. Después de instalar Homebrew, puedes instalar Python ejecutando el siguiente comando en la Terminal:
brew install pythonEste comando descargará e instalará Python en el sistema.
Verificar la instalación
Cuando termine la instalación, puedes verificar que Python se haya instalado correctamente ejecutando el siguiente comando en la Terminal:
python3 --versionEste comando debería mostrar la versión de Python instalada y confirmar que Python se instaló correctamente en el sistema.
Ten en cuenta que Python 2 viene preinstalado en Mac y lo usa el sistema operativo. Por eso, al instalar Python con Homebrew u otros métodos, instalarás Python 3 y tendrás que usar el comando python3 para ejecutar tus scripts.
Instalación con Pyenv
Pyenv es una herramienta sencilla, potente y multiplataforma que te permite administrar varias versiones de Python en un mismo sistema sin conflictos. Te permite cambiar fácilmente de una versión a otra, establecer una versión predeterminada para el sistema e incluso especificar una versión para cada proyecto. Esto resulta muy útil cuando trabajas en varios proyectos que requieren distintas versiones de Python.
Cómo instalar Pyenv
Antes de instalar Pyenv, asegúrate de tener las dependencias necesarias. En macOS, necesitarás Homebrew. Si aún no lo tienes instalado, puedes instalarlo con este comando en la Terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Una vez instalado Homebrew, puedes instalar Pyenv con el siguiente comando:
brew install pyenvUsar Pyenv para administrar varias versiones de Python
Con Pyenv instalado, ya puedes instalar varias versiones de Python. Para hacerlo, usa el comando pyenv install seguido del número de versión. Por ejemplo, para instalar Python 3.9.1, usarías:
1pyenv install 3.9.1Puedes ver todas las versiones de Python disponibles para instalar con el comando pyenv install --list. Para cambiar entre las versiones instaladas, usa el comando pyenv global seguido del número de versión, así:
pyenv global 3.9.1Para establecer una versión de Python para un proyecto específico, ve al directorio del proyecto y usa el comando pyenv local de esta forma:
cd my-project
pyenv local 3.8.6Para confirmar que Pyenv administra tus versiones de Python como esperas, puedes usar el comando pyenv versions. Se mostrarán todas las versiones de Python instaladas, con un asterisco (*) junto a la versión activa. También puedes verificar qué versión de Python se usa en un proyecto específico: ve al directorio del proyecto y usa el comando python --version.
En conclusión, Pyenv es una herramienta valiosa para cualquier desarrollador que trabaje con Python. Simplifica la administración de varias versiones de Python y te permite concentrarte en programar en lugar de configurar el entorno.
La importancia de los entornos virtuales en el desarrollo con Python
Python es un lenguaje de programación versátil y ampliamente utilizado, con un extenso ecosistema de módulos y paquetes. Al explorar este ecosistema, es importante entender la función de los entornos virtuales. En esta sección, veremos qué son, por qué los necesitan los desarrolladores y qué herramientas existen para crear entornos virtuales de Python.
¿Qué son los entornos virtuales?
Un entorno virtual es un árbol de directorios autónomo que contiene una instalación de Python para una versión específica, además de varios paquetes adicionales. Esta herramienta ayuda a mantener separadas las dependencias de distintos proyectos mediante la creación de espacios aislados. Así, cada proyecto puede tener sus propias dependencias, independientemente de las que tengan los demás.
Veamos un ejemplo de cómo crear un entorno virtual con el módulo integrado venv de Python:
$ python3 -m venv /path/to/new/virtual/environmentEn el comando anterior, puedes reemplazar /path/to/new/virtual/environment por el destino que prefieras. Este comando crea un directorio si aún no existe y configura un nuevo entorno virtual en la ubicación especificada.
Por qué los desarrolladores necesitan entornos virtuales
Trabajar en varios proyectos de Python puede requerir distintas versiones de Python y de sus paquetes. Instalar todo de forma global puede provocar conflictos de versiones y otros problemas. Aquí es donde entran en juego los entornos virtuales.
Los entornos virtuales permiten a los desarrolladores trabajar en varios proyectos de Python sin preocuparse por las interdependencias. Ofrecen un espacio aislado donde puedes instalar Python y otros paquetes, de modo que cada proyecto tenga sus propias dependencias y estas no interfieran entre sí.
Además, los entornos virtuales ayudan a garantizar que tus proyectos sean reproducibles. Esto es muy importante cuando trabajas en equipo y necesitas compartir tu código con otras personas.
Usar venv para crear entornos virtuales de Python
venv es un módulo de Python que crea entornos virtuales. Un entorno virtual es un entorno de ejecución aislado donde puedes instalar paquetes sin afectar la configuración global de Python. Este aislamiento evita conflictos entre paquetes y te permite instalar distintas versiones del mismo paquete en diferentes entornos. Por eso, venv es una herramienta esencial para los desarrolladores y especialistas en DevOps que trabajan con aplicaciones de Python.
Cómo crear un entorno virtual con venv
Crear un entorno virtual con venv es sencillo. En la terminal, ve al directorio de tu proyecto y ejecuta el siguiente comando:
python3 -m venv myenvEste comando crea un nuevo directorio llamado myenv en el directorio actual. Este nuevo directorio contiene el entorno virtual, el intérprete de Python, la biblioteca estándar y varios archivos de soporte.
Cómo activar y usar el entorno virtual
Después de crear el entorno virtual, tendrás que activarlo. Al activar el entorno, se ajusta tu PATH para que el comando python ejecute la versión del entorno virtual, en lugar del intérprete global de Python.
En macOS, puedes activar el entorno virtual con el siguiente comando:
1source myenv/bin/activateAl activarlo, el indicador de la terminal cambiará para mostrar que el entorno está activo. La terminal debería verse más o menos así:
(myenv) $Ahora puedes instalar paquetes en este entorno sin afectar la configuración global de Python.
Instalar Python 3 en el entorno virtual
Como el módulo venv viene incluido en Python 3.3 y versiones posteriores, Python 3 se instala automáticamente en el entorno virtual al crearlo. Sin embargo, puedes especificar otra versión de Python al crear el entorno. Por ejemplo, para crear un entorno con Python 3.7, usarías el siguiente comando:
python3.7 -m venv myenvVerificar la instalación
Para confirmar que Python 3 está instalado en tu entorno virtual, puedes usar el siguiente comando:
python --versionEste comando debería mostrar la versión de Python instalada en tu entorno.
Recuerda que usar venv para crear y administrar entornos virtuales es una habilidad esencial en el desarrollo con Python. Es una forma eficaz de administrar las dependencias de los proyectos y garantizar su coherencia y confiabilidad. ¡Que disfrutes programando!
Herramientas adicionales para crear entornos virtuales de Python
1. virtualenv: Es una herramienta muy popular que crea entornos aislados de Python. Es anterior a venv y ofrece más funciones.
Uso:
$ pip install virtualenv
$ virtualenv myenv2. pipenv: Esta herramienta busca reunir lo mejor de todos los mundos de empaquetado en Python. Integra Pipfile, pip y virtualenv en un solo comando.
Uso:
$ pip install pipenv
$ pipenv --threeConfigurar un entorno de desarrollo local de Python en un contenedor de Docker
En esta sección, veremos cómo configurar un entorno de desarrollo local de Python con Docker. Explicaremos qué es Docker, por qué es útil para el desarrollo con Python, cómo crear un Dockerfile, cómo compilar y ejecutar una aplicación de Python en un contenedor de Docker y cómo proteger tus aplicaciones de Python en Docker con Snyk.
Qué es Docker
Docker es una plataforma de código abierto que automatiza la implementación, el escalado y la administración de aplicaciones. Empaqueta el software en unidades estandarizadas llamadas contenedores, que incluyen todo lo que el software necesita para ejecutarse: bibliotecas, herramientas del sistema, código y entorno de ejecución. Con Docker, puedes garantizar entornos coherentes desde el desarrollo hasta la producción.
Por qué usar Docker para el desarrollo con Python
Docker ofrece varias ventajas para el desarrollo con Python:
Coherencia: los contenedores de Docker garantizan que tu aplicación se ejecute exactamente de la misma manera, sin importar dónde se implemente.
Aislamiento: Docker ofrece aislamiento, lo que significa que las dependencias de distintos proyectos se mantienen separadas. Esto facilita su administración y evita conflictos entre proyectos.
Reproducibilidad: los contenedores de Docker son reproducibles, así que puedes compartirlos fácilmente y otras personas obtendrán exactamente el mismo entorno.
Crear un Dockerfile para una aplicación de Python
Un Dockerfile es un script que contiene un conjunto de comandos e instrucciones para crear una imagen de Docker. Este es un ejemplo básico de un Dockerfile para una aplicación de Python:
FROM python:3.8
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "./your-python-script.py"]En este Dockerfile, empezamos con una imagen de Python 3.8. Luego copiamos el archivo requirements.txt a la imagen de Docker e instalamos las dependencias de Python. Después, copiamos el resto del código a la imagen de Docker y especificamos el comando para ejecutar la aplicación.
Compilar y ejecutar una aplicación de Python en un contenedor de Docker
Después de crear un Dockerfile, puedes compilar tu imagen de Docker con el comando docker build:
docker build -t your-python-app .Este comando compila una imagen de Docker a partir de tu Dockerfile y le asigna el nombre 'your-python-app'.
Para ejecutar la aplicación en un contenedor de Docker, puedes usar el comando docker run:
docker run -p 8000:8000 your-python-appEste comando ejecuta tu aplicación dentro de un contenedor de Docker y asigna el puerto 8000 del contenedor al puerto 8000 de tu máquina.
Cómo mantener seguras tus aplicaciones de Python en Docker con Snyk
Snyk es una herramienta que ayuda a encontrar y corregir vulnerabilidades de seguridad en tus imágenes de Docker. Se integra con tu pipeline de CI/CD para garantizar que tus imágenes de Docker sean seguras antes de implementarlas.
Para usar Snyk, primero debes instalarlo:
npm install -g snykLuego, puedes analizar tu imagen de Docker en busca de vulnerabilidades:
snyk test --docker your-python-app:latest --file=DockerfileEste comando analiza tu imagen de Docker y tu Dockerfile en busca de vulnerabilidades. Si encuentra alguna, Snyk proporciona información detallada y recomendaciones para corregirla.
Referencias
Instalar Python y configurar un entorno de desarrollo adecuado puede ser una tarea compleja, sobre todo cuando hay que administrar distintas versiones de Python y aislar las dependencias de cada proyecto. Estas referencias te guiarán en el proceso y te ayudarán a profundizar tus conocimientos sobre Python, Homebrew, Pyenv, venv y Docker.
Documentación de Python
La documentación oficial de Python ofrece una guía completa para instalarlo y profundizar en su amplio ecosistema. Tanto si estás empezando como si tienes experiencia como desarrollador, la documentación de Python es un recurso indispensable.
Enlace: Documentación oficial de Python
¡Compite en Fetch the Flag 2026!
Pon a prueba tus habilidades de seguridad en nuestro evento Capture the Flag, del 12 al 13 de febrero, de 12 p. m. ET a 12 p. m. ET.