¿Puedo construir aplicaciones para iPhone usando Python?

Sí, pero probablemente no sea una buena idea.

De hecho, no es ideal pensar en hacer “aplicaciones para iPhone” en absoluto. Piense en hacer aplicaciones móviles en su lugar.

Kivy.org ofrece una solución multiplataforma que utiliza Python. Pero incluso entonces no es ideal. Crea controles en OpenGL como lo haría un juego, lo que funciona bien para un juego, pero no se parece en nada a los controles nativos en ninguna plataforma. Si quieres crear una aplicación 100% temática, esto no es tan malo. Pero también te estás encerrando en el ecosistema, de modo que si Kivy no tiene el control que necesitas, tendrás que hacerlo tú mismo.

No estaría de más usar Kivy para aplicaciones pequeñas, pero será mucho mejor usar un lenguaje como C # con Xamarin o JavaScript con Cordova / Ionic / Meteor.js / React Native / NativeScript. Las herramientas de desarrollo son más maduras y la comunidad es mucho más grande. Si necesita acceso a una API nativa que aún no es compatible, probablemente pueda encontrar ejemplos en StackOverflow.

Si solo eres reacio a aprender un nuevo idioma, no lo seas. Te ayudará a crecer como desarrollador.

“Kivy – Biblioteca Python de código abierto para el desarrollo rápido de aplicaciones
que utilizan interfaces de usuario innovadoras, como aplicaciones multitáctiles. … Kivy se ejecuta en Linux, Windows, OS X, Android e iOS. Puede ejecutar el mismo código en todas las plataformas compatibles “.

Kivy: Marco de plataforma cruzada para NUI

Otros dos vectores si quieres Python en tu teléfono.

http://omz-software.com/pythonista/ Es un intérprete de Python sandbox que se ejecuta en. iOS; no es adecuado para el desarrollo de aplicaciones comerciales, pero puede realizar todo tipo de tareas útiles de secuencias de comandos, e incluso puede hacer GUI.

https://github.com/bamboo/boo No es exactamente Python pero es sintácticamente muy similar. Se compila en ensamblajes de clr y puede ejecutarse en mono, por lo que puede realizar el desarrollo de aplicaciones usando http://xamarin.com con boo. Debido a que se somete a una compilación estática, no entra en conflicto con las pautas de Apple sobre lenguajes dinámicos ni necesita una caja de arena. Aquí hay un artículo que cubre los conceptos básicos de abucheo desde una perspectiva de Python: http: //techartsurvival.blogspot