Pydroid 3 is the most easy to use and powerful educational Python 3 IDE for Android.
- Offline Python 3.6 interpreter: no Internet is required to run Python programs.
- Pip package manager and a custom repository for prebuilt wheel packages for enhanced scientific libraries, such as numpy, scipy, matplotlib, scikit-learn and jupyter.
- Examples available out-of-the-box for quicker learning.
- Complete Tkinter support for GUI.
- Full-featured Terminal Emulator, with a readline support (available in pip).
- Built-in C, C++ and even Fortran compiler designed by n0n3m4, an author of C4droid, specially for Pydroid 3. It lets Pydroid 3 build any library from pip, even if it is using native code. You can also build & install dependencies from a command line.
- Cython support.
- PDB debugger with breakpoints and watches.
- Kivy graphical library with a shiny new SDL2 backend.
- PyQt5 support available in Quick Install repository along with matplotlib PyQt5 support with no extra code required.
- Matplotlib Kivy support available in Quick Install repository.
- pygame_sdl2 support (SDL2-based pygame implementation).
- Code prediction, auto indentation and real time code analysis just like in any real IDE. *
- Extended keyboard bar with all symbols you need to program in Python.
- Syntax highlighting & themes.
- Enhanced code navigation with interactive assignment/definition gotos.
- One click share on Pastebin.
* Features marked by asterisk are available in Premium version only.
Pydroid 3 requires at least 200MB free internal memory. 220MB+ is recommended. More if you are using heavy libraries such as scipy.
To run debug place breakpoint(s) clicking on the line number.
Kivy is detected with “import kivy”, “from kivy“ or "#Pydroid run kivy”.
PyQt5 is detected with “import PyQt5”, “from PyQt5“ or "#Pydroid run qt”.
The same for sdl2, tkinter and pygame.
There is a special mode "#Pydroid run terminal" to ensure your program runs in terminal mode (this is useful with matplotlib that automatically runs in GUI mode)
Take a part in development of Pydroid 3 by reporting bugs or providing feature requests to us. We appreciate that.
The list of libraries we are NOT planning to add yet:
As Pydroid 3 main goal is to help user learn Python 3 programming language, our first priority is porting scientific libraries (so system-related libraries are ported only when they are used as dependencies of some other educational package).
Some users experienced major problems when installing libraries from QPython 3 QPypi internal repository, so consider it to be binary incompatible with Pydroid 3. If you need any libraries that cannot be built with Pydroid 3 - contact the devs directly: other binary repositories are likely to be incompatible as well.
Some binaries in Pydroid 3 APK are licensed under (L)GPL, email us for the source code.
GPL pure Python libraries bundled with Pydroid 3 are considered to be coming in the source code form already.
Pydroid 3 doesn’t bundle any GPL-licensed native modules to avoid automatic import of them. The famous example of such library is GNU readline, that can be installed using pip.
Samples available in the application are free for educational usage with one exception: they, or their derivative works, cannot be used in any competing products (in any way). If you are unsure, whether your app is affected by this restriction, always ask for a permission via email.
Android is a trademark of Google Inc.