ColabのPython interpreter: Gemini2.5Flash@20251002
Colab 環境では、CPython が基盤となる Python インタープリターとして使用されています。そして、IPython は、CPython の上で動作する拡張されたインタラクティブなシェルです。
簡単に言うと、
- CPython: Python のリファレンス実装であり、Python コードを実行するエンジンそのものです。Colab のバックエンドで実際にコードを実行しているのは CPython です。
- IPython: CPython の上に構築されたユーザーインターフェースのようなものです。よりリッチな対話環境(例えば、セルの実行、マジックコマンド、補完機能など)を提供します。Colab のノートブック環境でコードを記述し、実行する際に利用しているのは、この IPython の機能です。
したがって、コードを実行している「本体」は CPython ですが、Colab のノートブックとして操作している環境は IPython が提供している機能を利用しています。
表示されているセルも、CPython インタープリターによって実行されていますが、その実行を指示したり、結果を表示したりする部分は IPython の機能を通じて行われています。
Python interpreter
CPython以外にも、特定の目的や環境に合わせて開発されたPythonインタープリターがいくつかあります。よく使われるものとしては、以下のようなものがあります。
- Jython: Javaプラットフォーム上で動作するPythonインタープリターです。PythonコードからJavaのクラスやライブラリを利用したり、JavaコードからPythonスクリプトを埋め込んだりすることが可能です。Java仮想マシン(JVM)上で実行されます。
- IronPython: .NET Framework上で動作するPythonインタープリターです。Pythonコードから.NETのクラスやライブラリを利用したり、C#などの.NET言語と連携させたりすることが可能です。
- PyPy: Pythonで書かれたPythonインタープリターです。Just-In-Time (JIT) コンパイラを搭載しており、CPythonよりも高速にコードを実行できる場合があります。特に、ループ処理などが頻繁に行われる場合に性能が向上する傾向があります。
- MicroPython: マイクロコントローラーや組み込みシステム向けに最適化されたPythonインタープリターです。メモリや処理能力が限られた環境でPythonを実行するために設計されています。
これらのインタープリターは、それぞれ異なるプラットフォームや用途に特化しており、CPythonとは異なる特徴を持っています。