¿Cómo hacer un archivo .py ejecutable (para no programadores)?

Estoy en Ubuntu 16.04 y he creado un script de python para mi colega: tiene MacOS . Suponga que no sabe nada sobre bash o python.

Así que no quiero que ejecute este script desde bash . Me gustaría que simplemente haga doble clic en el archivo para ejecutar el script.

¿Cómo lo harías tú?

Agregando:

#!/usr/bin/env python

junto a

chmod +x filename 

No funciona en mi Ubuntu, así que supongo que no funcionará en MacOS

Esta es una parte superior del guión:

#!/usr/bin/env python
# coding=utf-8
import os
try:
    import jinja2
except ImportError:
    import pip
    pip.main(['install','jinja2'])

EDITAR: No puedo acceder a su Mac, así que tengo que darle instrucciones claras o crear algún ejecutable.

Me parece razonable, ¿por qué no funciona en Ubuntu? Debería funcionar en macOS, suponiendo que el ejecutable de python en PATH tenga la versión requerida y que todas las bibliotecas estén instaladas o sean instalables.
No estoy seguro. Pero incluso si sigo estos pasos, cuando hago clic en file.py, se abre en gedit (editor de texto).
Eso es un problema de Linux entonces. Mientras tu amigo no haya configurado su Mac para abrir .pyarchivos en un editor, deberías estar bien.

Respuestas (2)

Simplemente puede cambiar el nombre del archivo y convertirlo en la extensión de archivo "comando" en su lugar. Además, tienes que hacerlo ejecutable (como lo haces antes con chmod +x). Simplemente asígnele el nombre "jinja.command", en lugar de "jinja.py", por ejemplo.

Luego, verá una ventana de terminal abierta con salida de texto (si tiene una en su aplicación), hasta la cadena "programa terminado".

No ayudó, todavía se abre en gedit.
Debe usar la extensión ".command" para ejecutar archivos con scripts de consola solo para macOS. La respuesta fue sobre macOS, porque originalmente preguntaste sobre mac. Si desea lo mismo, pero para ubuntu, debe utilizar otro enfoque: askubuntu.com/questions/286621/…
@MilanoSlesarik Agregaré una herramienta específica de Mac como otra respuesta. Le permite mantener su script configurado para todas las plataformas y la GUI específica de Mac por separado.

Quieres una herramienta llamada Ornitorrinco. Proporciona una guía muy clara sobre cómo convertir scripts en aplicaciones.

ingrese la descripción de la imagen aquí

Platypus es una herramienta de desarrollo de Mac OS X que crea aplicaciones nativas de Mac OS X a partir de scripts interpretados, como scripts de shell o programas Perl, Ruby y Python. Esto se hace envolviendo la secuencia de comandos en un paquete de aplicaciones junto con un binario ejecutable nativo que ejecuta la secuencia de comandos.

¿Funcionaría esto en una biblioteca de directorio?