Question: Using [PyObjC](http://pyobjc.sourceforge.net/), you can use Python to write Cocoa applications for OS X. Can I write native iPhone apps using Python and if so, how?

Answer: 
It seems this is now something developers are allowed to do: the iOS Developer Agreement was changed yesterday and appears to have been ammended in a such a way as to make embedding a Python interpretter in your application legal:

**SECTION 3.3.2 — INTERPRETERS**

**Old:**

> 
> 3.3.2 An Application may not itself install or launch other executable
>  code by any means, including without
>  limitation through the use of a
>  plug-in architecture, calling other
>  frameworks, other APIs or otherwise.
>  Unless otherwise approved by Apple in
>  writing, no interpreted code may be
>  downloaded or used in an Application
>  except for code that is interpreted
>  and run by Apple’s Documented APIs and
>  built-in interpreter(s).
>  Notwithstanding the foregoing, with
>  Apple’s prior written consent, an
>  Application may use embedded
>  interpreted code in a limited way if
>  such use is solely for providing minor
>  features or functionality that are
>  consistent with the intended and
>  advertised purpose of the Application.
> 
> 
> 

**New:**

> 
> 3.3.2 An Application may not download or install executable code.
>  Interpreted code may only be used in
>  an Application if all scripts, code
>  and interpreters are packaged in the
>  Application and not downloaded. The
>  only exception to the foregoing is
>  scripts and code downloaded and run by
>  Apple’s built-in WebKit framework.
> 
> 
>
You can do this with PyObjC, with a jailbroken phone of course. But if you want to get it into the App Store, they will not allow it because it "interprets code." However, you may be able to use [Shed Skin](http://code.google.com/p/shedskin/), although I'm not aware of anyone doing this. I can't think of any good reason to do this though, as you lose dynamic typing, and might as well use ObjC.