About Think Python

Think Python intends to be an interactive online learning environment for Python. It consists of two parts: A small IDE which is able to run your Python code in the browser without installing any plugins and an interactive training system which can contain explainations, questions and practical tasks.

How does it work?

Running Python

To run Python in the browser the Project Empythoned is used. The CPython interpreter is compiled to LLVM which is compiled to JavaScript by Emscripten. That means that running Python in the browser is significantly slower than running it in the native Python environment. Nevertheless it is a great advantage to be able to run and develop python scripts on any computer without being forced to install the Python runtime environment. Empythoned and Emscripten are licensed under the MIT license.

Syntax Highlighting

The IDE has a syntax highlighting editor which uses Code Mirror for highlighting. Code Mirror is published under an MIT-style license.


Currently not every module of the Python standard library is supported. Also stdin does not work yet, so you can't use the functions input or raw_input.

Who iniciated the project?

This project was iniciated for a "Languages and Translators" class at California Polytechnic State University, San Luis Obispo (Cal Poly Website). For more information please visit http://sourceforge.net/projects/thinkpython/ or contact me (Carsten Pfeffer).