プログラミング · 1 min read · Oct 20, 2025

JavascriptとPython:相互変換ツール

目次

  • これらのツールを使ってJavascriptをPythonに、またその逆に簡単に変換できます - これらのツールを使えば、一つの言語で書かれたコードを別の言語の同等のものに変換できます
  • Transcrypt
  • Jiphy
  • Brython
  • RapydScript

これらのツールを使ってJavascriptをPythonに、またその逆に簡単に変換できます

これらのツールを使えば、一つの言語で書かれたコードを別の言語の同等のものに変換できます

JavascriptとPythonは、どちらも高水準のオブジェクト指向言語です。プログラマーは、Pythonが少ない行数で概念を表現できるため、他の類似言語よりもPythonを好みます。一方、Javascriptはワールドワイドウェブで使用される主要なスクリプト言語です。これら二つのうち、どちらが今後支配するのかは、テック好きの間で議論のテーマです。

JavaScriptは他の言語から変換されるターゲット言語として非常に歓迎されており、Pythonの豊富なライブラリの数は、Javascriptへの「トランスパイリング」の良い候補となります。

以下は、この方向で作業している4つの主要プロジェクトであり、クロスコンパイルに使用できます。

彼らの機能: 一つの言語でコードを書き、以下のツールのいずれかでコンパイルすると、別の言語の同等のコードが生成されます。

リストは以下の通りです:

Transcrypt

新しく登場したPythonからJSへのトランスパイラであるTranscryptは、生成するコードの品質について興味深い約束をしています。まず第一に、元のPythonコードの構造をできるだけ忠実に保つことを試みており、複数の継承やラムダなども含まれます。ソースのPythonコードは、JavaScriptの名前空間内のオブジェクトにそのまま呼び出すこともできます。Pythonでdocument.getElementByIdにアクセスしようとすると、変換されたコードは実際のdocument.getElementByIdをJavascriptで使用します。

ドキュメントによると、TranscryptはCPythonの抽象構文木モジュールを使用してこれらのタスクを達成しており、Pythonが自分のコードをどのように解析するかにプログラム的にアクセスできます。このプロジェクトはまだアルファ版ですが、今後の展開が楽しみです。

Jiphy

Jiphyは双方向に変換を行い、変換前に両言語のコードを混在させることもできます。Jiphyは「Python出力のJavascript」を意味します。 現在のJiphyの最大の欠点は、Pythonの機能のサブセットしかサポートしていないことです。クラスやデフォルト引数はまだ利用できませんが、デコレーターや例外は利用可能です。これは、Jiphyがソースコードとターゲットコードの間でできるだけ行対行の関係を確立しようとするためですが、開発者はES6の新機能に注目しており、より高度なPython機能のサポートを目指しています。

Brython

Brythonは、Python 3のクライアントサイドWebプログラミング用のバージョンを実装しており、Python 3のすべてのキーワードとほとんどのビルトインをエミュレートするJavaScriptライブラリを介して提供されます。Pythonで書かれたスクリプトはWebページに直接含めることができ、BrythonはDOMやブラウザで通常直接行われる作業を行うための高レベルのPythonモジュールインターフェース(ブラウザ)を提供します。

ただし、Brythonはブラウザ内のJavaScriptに課せられた制限も維持しています。たとえば、ローカルファイルシステムを扱うサポートはありません。

RapydScript

RapydScriptは「クソではないPythonic JavaScript」を約束します。このプロジェクトはCoffeeScriptに概念的に似ています:Pythonのフレーバーで書かれたコードを取り込み、JavaScriptを生成し、両方の言語の利点を活用します。Pythonの場合は、構文のクリーンさです。JavaScriptの場合は、匿名関数、DOMの操作、jQueryやNode.jsコアのような既存のJavaScriptライブラリを使用できることです。

これらのツールはコードを変換する機能を提供しますが、異なるプログラマーは異なるお気に入りのプログラミング言語を持つかもしれません。あなたのお気に入りをコメントで教えてください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。