Pythonista is a complete scripting environment for Python, running directly on your iPad or iPhone. It includes support for both Python 3.6 and 2.7, so you can use all the language improvements in Python 3, while still having 2.7 available for backwards compatibility.
In true Python fashion, batteries are included – from popular third-party modules like requests, numpy, matplotlib, and many more, to modules that are tailor-made for iOS. You can write scripts that access sensor and location data, your photo library, contacts, reminders, the clipboard, and much more.
You can also use Pythonista to build interactive multi-touch experiences, custom user interfaces, animations, and 2D games.
Apart from learning and practicing Python, you can also use Pythonista to automate parts of iOS with app extensions, e.g. to invoke scripts directly from the standard share sheet in almost any app.
>>> Powerful code editor with syntax highlighting, code completion, scripting support, and more
>>> Interactive prompt with code completion, command history, and support for showing images in the console output
>>> Integrated visual debugger and object inspector
>>> Integrated PEP 8 style checker with issues highlighted directly in the editor
>>> Complete offline documentation with quick lookup directly from the editor
>>> Various beautiful light and dark color themes, and a theme editor to make your own
>>> UI editor for quick prototyping
>>> Includes most of the Python standard library and additional modules for graphics, sound, and iOS system services (e.g. clipboard, contacts, reminders, twitter, UI...)
>>> Matplotlib and NumPy for scientific visualizations
>>> Lots of other popular third-party modules, e.g. requests, BeautifulSoup, Flask, bottle, SymPy, and more are included.
>>> Lots of included examples to get started
>>> Universal app for iPad and iPhone
>>> Share sheet app extension for running scripts from almost any app
>>> Custom scriptable keyboard to use Python in any app that edits text
The name "Pythonista" is used with kind permission of the Python Software Foundation.
Please note that Pythonista is not designed to enable the installation or download of additional native modules, and it does *not* include the SciPy stack (just parts of it).
Pythonista 3.3 App Store Release Notes
• Support for dark mode on iOS 13 – you can now select separate themes for light/dark mode, and Pythonista will switch automatically between them. Switching between themes is also a bit faster now.
• New custom keyboard ("PyKeys") for running scripts in any app with text input. Have a look at the sample scripts in the Examples/Keyboard folder for some ideas of what you can do with this.
• Significantly improved support for external keyboards (more contextual shortcuts, arrow-key navigation almost everywhere…)
• The outline (list of functions) in the editor can now be filtered -- just start typing if the keyboard is already active, or drag down the list to reveal the filter text field. The filter supports fuzzy matching, and you can enter line numbers as well.
• Unified UI (and documentation) for creating script shortcuts in various places of iOS ("Shortcuts" option in the "wrench" menu).
• New URL generator for easier inter-app automation (you can also use this with the Shortcuts app, but full Shortcuts support will come later).
• Support for opening external folders using the system's file picker on iOS 13 (this was possible on iOS 12, but not easily discoverable).
• Revamped `notifications` module with custom action buttons, support for attachments, location triggers, and more – see the new "Notification Quiz.py" sample code for a demo. The module also works in the share sheet extension now.
• New "on device" option for speech recognition in the `speech` module (please note that this can be very slow though!)
• New `location.render_map_snapshot()` function to generate an image from a location (see new "Satellite Image.py" sample code).
• Console history is now persistent (you can clear it by tapping and holding the `^` button).
• Various bugfixes for iOS 13 and new screen sizes, new sample code, documentation, and more – you can find the full release notes in the in-app documentation (which also supports multiple tabs now btw).
Thanks for reading, and thanks for your patience with this release. It's not everything I'd like it to be (hello, Shortcuts app!), but there are still many new things to discover, and I hope you have a lot of fun with it!
Ratings and ReviewsSee All
Excellent tool for on the go Python
I usually don’t write reviews, but I felt compelled to for this gem of an app. I regularly program on the side for fun and automation. I’ve used Pythonista to automate tasks on my phone, prototype programs for my Windows and Linux computers, and built silly games to play for fun. I’ve used Python at work to drastically speed up our workflows by several hours, which has been a life saver and even garnered me a raise. Not only was Pythonista an indispensable tool for prototyping those programs, but it has allowed me the opportunity to improve my skills on the go. There are some limitations I wish didn’t exist, but this is because of Apple, not the developers. The developers have gone above and beyond to implement extra libraries and integrate Pythonista with iOS. If you’re looking for a good iOS Python app or want to learn Python on the go, I highly recommend this app!
Insanely Incredible Tool!
This is coming from someone who has been using a MacBook Pro for programming as a main source, and have been using PyCharm previously and also Sublime Text 3 as a text editor. I didn't have too high of hopes for an IDE for mobile (iPad and iPhone) but I clearly changed my opinion. This was the best $10 I have ever spent in my life. It is an amazing tool with so many good features, and a very nice user interface for professional users and even people who are just starting out or hobbyists. I would recommend this application to any person I know, and I would get them to start programming on Pythonista. The lovely thing about this is that you can take it literally everywhere, now that iPhones are in almost every pocket these days, and I think people should take advantage of it and get this app. I <3 the creators of Pythonista!!!
A Python IDE for iOS
Truly a remarkable app with amazing capabilities!
As a part-time mobile app developer, full time tinkerer, I write a lot of mobile apps for myself. This used to require a paid developer account and competency in various languages and supporting tools. For myself, most of this madness has been replaced with Pythonista programs.
Amongst many features, you get a theme-able editor with syntax highlighting, auto-complete and a built-in debugger, a REPL, and a UI builder. Add the community-developed shell, StaSh, and you get a basic terminal with pip to pull dependencies for your programs. With action sheet support it is trivial to create programs that integrate seamlessly with other iOS apps. Works great with repository management apps like Working Copy.
With Family Sharing set up, up to six family members can use this app.