Python en Xcode 4+?

198

¿Cómo se crea un entorno amigable para Python en Xcode 4, 5, 6 o 7?

Tyler Crompton
fuente
1
Komodo es una buena alternativa específica para Python, especialmente si no está tratando de combinar Python con cualquier cosa específica de OSX.
Hmm Parece interesante pero no tengo ganas de toser el efectivo.
Tyler Crompton
Komodo Edit es su opción gratuita. Tengo IDE y si haces un trabajo serio de Python, vale la pena.
1
Recomiendo Wing 4 solo por su asistente de código ... muy agradable. Pero Xcode 4 es bastante bonito :-).
NickZoic
1
¿Que demonios? ¿Una pregunta para el futuro? Fechado el 11 de marzo de 2011 a las 18:40 ???
Prajeet Shrestha

Respuestas:

266

¡Me lo imaginé! Los pasos hacen que parezca que tomará más esfuerzo del que realmente requiere.

Estas instrucciones son para crear un proyecto desde cero. Si tiene scripts de Python existentes que desea incluir en este proyecto, obviamente tendrá que desviarse ligeramente de estas instrucciones.

Si encuentra que estas instrucciones ya no funcionan o no están claras debido a cambios en las actualizaciones de Xcode, avíseme. Haré las correcciones necesarias.

  1. Abrir Xcode. Las instrucciones para cualquiera son las mismas.
  2. En la barra de menú, haga clic en "Archivo" → "Nuevo" → "Nuevo proyecto ...".
  3. Seleccione "Otro" en el panel izquierdo, luego "Sistema de compilación externo" en la página derecha, y luego haga clic en "Siguiente".
  4. Ingrese el nombre del producto, el nombre de la organización o el identificador de la organización.
  5. Para el campo "Herramienta de compilación", escriba /usr/local/bin/python3Python 3 o /usr/bin/pythonPython 2 y luego haga clic en "Siguiente". Tenga en cuenta que esto supone que tiene el enlace simbólico (que está configurado de forma predeterminada) que se resuelve en el ejecutable de Python. Si no está seguro de dónde están sus ejecutables de Python, ingrese cualquiera de estos comandos en la Terminal: which python3ywhich python .
  6. Haga clic en Siguiente".
  7. Elija dónde guardarlo y haga clic en "Crear".
  8. En la barra de menú, haga clic en "Archivo" → "Nuevo" → "Nuevo archivo ...".
  9. Seleccione "Otro" en "OS X".
  10. Seleccione "Vacío" y haga clic en "Siguiente".
  11. Navegue a la carpeta del proyecto (de lo contrario no funcionará), ingrese el nombre del archivo Python (incluida la extensión ".py") y haga clic en "Crear".
  12. En la barra de menú, haga clic en "Producto" → "Esquema" → "Editar esquema ...".
  13. Haga clic en "Ejecutar" en el panel izquierdo.
  14. En la pestaña "Información", haga clic en el campo "Ejecutable" y luego haga clic en "Otro ...".
  15. Vaya al ejecutable desde el paso 5. Es posible que deba usar ⇧⌘G para escribir en el directorio si está oculto.
  16. Seleccione el ejecutable y haga clic en "Elegir".
  17. Desmarque "Debug ejecutable". Si omite este paso, Xcode intentará depurar el ejecutable de Python. No conozco una forma de integrar una herramienta de depuración externa en Xcode.
  18. Haga clic en el icono "+" en "Argumentos pasados ​​al iniciar". Puede que tenga que expandir esa sección haciendo clic en el triángulo que apunta a la derecha.
  19. Escriba $(SRCROOT)/(o $(SOURCE_ROOT)/) y luego el nombre del archivo de Python que desea probar. Recuerde, el programa Python debe estar en la carpeta del proyecto. De lo contrario, tendrá que escribir la ruta completa (o la ruta relativa si está en una subcarpeta de la carpeta del proyecto) aquí. Si hay espacios en cualquier lugar de la ruta completa, debe incluir comillas al principio y al final de este.
  20. Haga clic en "Cerrar".

Tenga en cuenta que si abre el panel "Utilidades", con la pestaña "Mostrar el inspector de archivos" activa, el tipo de archivo se establece automáticamente en "Predeterminado - Script de Python". Siéntase libre de mirar todas las opciones de tipo de archivo que tiene, para tener una idea de lo que es capaz de hacer. El método anterior se puede aplicar a cualquier idioma interpretado. A partir de ahora, todavía tengo que descubrir exactamente cómo hacer que funcione con Java; Por otra parte, no he investigado demasiado. Seguramente hay algo de documentación flotando en la web sobre todo esto.

Ejecución sin privilegios administrativos:

Si no tiene privilegios administrativos o no está en el grupo de Desarrolladores, aún puede usar Xcode para la programación de Python (pero aún no podrá desarrollar en lenguajes que requieran compilación). En lugar de usar el botón de reproducción, en la barra de menú, haga clic en "Producto" → "Realizar acción" → "Ejecutar sin construir" o simplemente use el atajo de teclado ^⌘R.

Otras notas:

Para cambiar la codificación de texto, los finales de línea y / o la configuración de sangría, abra el panel "Utilidades" y haga clic en la pestaña "Mostrar el inspector de archivos" activa. Allí, encontrará estas configuraciones.

Para obtener más información sobre la configuración de compilación de Xcode, no hay mejor fuente que esta . Me interesaría saber de alguien que consiguió que esto funcionara con lenguajes compilados no compatibles. Este proceso debería funcionar para cualquier otro lenguaje interpretado. Solo asegúrese de cambiar el Paso 5 y el Paso 16 en consecuencia.

Tyler Crompton
fuente
2
Impresionante que te hayas dado cuenta de esto. ¿Es posible la depuración interactiva? Me gustaría saber las pocas veces que tengo que hacerlo.
Tom Willis
2
Xcode4 a menudo hace una sangría automática extraña para mí. ¿Tuviste problemas similares? ¿Te has acercado a ellos de alguna manera?
Albert
1
@lciamp, no tengo experiencia con pyCharm; sin embargo, he conseguido que esto funcione en versiones de Python que no venían preinstaladas en OS X.
Tyler Crompton el
2
@xxmbabanexx, las instrucciones estaban un poco desactualizadas. Cambiaron el texto de la etiqueta para ese campo. He actualizado las instrucciones en consecuencia.
Tyler Crompton
1
Intenté esto en Xcode 5.02. Funcionó a excepción de 2 cosas: 1) No pude hacer que el esquema funcionara con $ (SOURCE_ROOT), así que me di por vencido y usé una ruta cableada; 2) cuando ejecuto el script de Python, Xcode se detiene en dyld`_dyld_start: si "continúo" parece funcionar. ¿Alguien más experimenta esto?
mts
29

He creado plantillas Xcode 4 para simplificar los pasos proporcionados por Tyler .
El resultado es la plantilla de proyecto Python para Xcode 4.

Ahora, lo que debe hacer es descargar las plantillas, moverlas /Developer/Library/Xcode/Templates/Project Templates/Mac/Others/y luego crear un nuevo proyecto de Python con Xcode 4.

Todavía necesita la configuración manual del esquema (puede consultar los pasos 12–20 proporcionados por Tyler ).

Chen-Hai
fuente
Traté de hacer una plantilla en vano. No sé mucho al respecto, así que no lo terminé. Atrezzo para las plantillas. Seguramente hay una manera de automatizar la configuración del esquema. : /
Tyler Crompton
13

Procedimiento para hacer que Python funcione en XCode 7

Paso 1: configure su proyecto con un sistema de compilación externo

ingrese la descripción de la imagen aquí

Paso 1.1: Edite el esquema del proyecto

ingrese la descripción de la imagen aquí

Paso 2: especifique Python como el ejecutable para el proyecto (shift-command-g) la ruta debe ser / usr / bin / python

ingrese la descripción de la imagen aquí

Paso 3: especifique su directorio de trabajo personalizado

ingrese la descripción de la imagen aquí

Paso 4: especifique los argumentos de la línea de comandos para que sean el nombre de su archivo de Python. (en este ejemplo "test.py")

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Paso 5: ¡ Afortunadamente eso es todo!

(¿la depuración no se puede agregar hasta que OSX admita un depurador de python?)

Asher
fuente
Parece que faltan algunos pasos en este proceso, comenzando justo después del paso 1, para Xcode 7.0.1 (7A1001) ... ¿Puede aclarar? Específicamente, no puedo encontrar el diálogo que se muestra en el Paso 2, y shift-command-g es el comando "Buscar anterior" ...
TraxusIV
@TraxusIV el paso que falta es: en la ventana principal de Xcode, haga clic en el nombre del proyecto. Debería obtener un menú con "Editar esquema ...", "Nuevo esquema .." y "Administrar esquemas ..." Seleccione "Editar esquema ..." y accederá a la ventana requerida, en el paso 2 anterior.
Deesbek
Para la herramienta de compilación del sistema de compilación externo, use el whichcomando en Terminal para obtener la ubicación exacta de la herramienta de compilación. "which lua", por ejemplo, devuelve "/ usr / local / bin / lua" en mi sistema.
C1pher
8

Deberías probar el complemento PyDev para Eclipse . Intenté usar muchos editores / IDE con Python, pero el único que más me gustó es el complemento PyDev para Eclipse. Tiene finalización de código, depurador y muchas otras características agradables. Además, ambos son gratis.

Edvinauskas
fuente
Eso es lo que estoy tratando de hacer ahora. Todavía no lo he hecho funcionar porque parece que tienes que saltar un par de aros para hacerlo, pero eso es lo que haré.
Tyler Crompton
Sí, una vez que agregue el intérprete de Python, estará listo. Si usted tiene alguna pregunta no dude en preguntar.
Edvinauskas
1
¿Cómo se agrega el intérprete de Python para hacer codificación interactiva aquí?
SexyBeast
6

Otra forma, que he estado usando durante un tiempo en XCode3:

Vea los pasos 1-15 anteriores.

  1. Elija / bin / bash como su ejecutable
  2. Para el campo "Depurador", seleccione "Ninguno".
  3. En la pestaña "Argumentos", haga clic en el campo "Expansiones de base activadas" y seleccione el objetivo que creó anteriormente.
  4. Haga clic en el icono "+" debajo de "Argumentos pasados ​​al iniciar". Puede que tenga que expandir esa sección haciendo clic en el triángulo que apunta a la derecha.
  5. Escriba "-l". Esto le dirá a bash que use su entorno de inicio de sesión (PYTHONPATH, etc.)
  6. Haz el paso 19 otra vez.
  7. Escriba "-c '$ (SOURCE_ROOT) /. Py'"
  8. Haga clic en Aceptar".
  9. Comience a codificar.

Lo bueno de esta manera es que usará el mismo entorno para desarrollar que usaría para ejecutar fuera de XCode (como se configuró desde su bash .profile).

También es lo suficientemente genérico como para permitirle desarrollar / ejecutar cualquier tipo de archivo, no solo python.

Smitty
fuente
2

Esta nota técnica TN2328 de Apple Developer Library me ayudó mucho sobre los cambios para incrustar Python usando Xcode 5.0.

Neowinston
fuente
2

Este hilo es antiguo, pero para intervenir en la versión 8.3.3 de Xcode, el método de Tyler Crompton en la respuesta aceptada todavía funciona (algunos de los nombres son muy diferentes, pero no lo suficiente como para importar).

2 puntos donde luché un poco:

Paso 16: Si el ejecutable de Python que desea está atenuado, haga clic derecho y seleccione Vista rápida. Luego cierre la ventana de vista rápida, y ahora debería ser seleccionable.

Paso 19: Si esto no funciona para usted, puede ingresar el nombre del archivo python en la pestaña Argumentos y luego ingresar el directorio raíz del proyecto explícitamente en la pestaña Opciones en el Directorio de trabajo: marque la casilla "Usar trabajo personalizado directorio ", y escriba el directorio raíz de su proyecto en el campo debajo de él.

Galen
fuente
¡Ese truco con el clic izquierdo y el 'vistazo rápido' es genial! me ayudó a que funcione! en Xcode 9.2 muchas gracias!
novski
1

Prueba Editra. Es gratis, tiene muchas funciones y complementos geniales, se ejecuta en la mayoría de las plataformas y está escrito en Python. Lo uso para todo mi desarrollo que no sea XCode en casa y en Windows / Linux en el trabajo.

Mohawke
fuente