検索
ホームページバックエンド開発Python チュートリアルIPython に似た Go 言語用対話型プログラミング インターフェイス

ブレット・ビクターの原理発明は、私がこれまで見た中で最も刺激的で衝撃的なデモンストレーションの 1 つです。元 Apple UI の第一人者は 2012 年にこのデモンストレーションを行っていましたが、その影響力は衰えていません。プログラムを作成するプロセスに何らかの変更があれば、プログラマが結果を確認できるように、つまり作成者が実際にその結果を確認できるようにする必要があります。彼らが作成したものについての時間的なフィードバック。

私は以前に Python を使用したことがあり、IPython Notebook がとても気に入っています。IPython Notenook を使用すると、いくつかのプロトタイプをすばやく完成させることができてとても便利です。プロジェクトの都合上、Go 言語を使い始めたいのですが、Go を使用できる IPython 環境はあるのでしょうか? Zhihu にも関連する投稿がありますが、残念ながら有効な答えは得られません。

小さな宿題をいくつかしましたが、結果は完璧ではないので、ここで共有します。

公式バージョン Go プレイグラウンド

Go 言語の学習を開始するための最良のリソースは公式ツアーです。学習と Go サンプル プログラムを同時に実行して、結果を直接取得できます。原則に基づいて発明するというコンセプトを完全に体現しています。

IPython に似た Go 言語用対話型プログラミング インターフェイス

このツアーには Go Playgound が埋め込まれています。プロジェクトのコードは github で見つけることができます。

IPython に似た Go 言語用対話型プログラミング インターフェイス

このプロジェクトには、プログラム動作のセキュリティを確保するためのフロントエンドとコンテナ化されたバックエンドのサンドボックスが含まれています。

ただし、Go Playground にはいくつかの制限があります:

ユーザー定義のパッケージをインポートできません

エディターが弱く、構文の強調表示、プロンプト、アンドゥはありません...

Ipython のようなセグメント化された操作はありません

Go の XIAM バージョン遊び場

IPython に似た Go 言語用対話型プログラミング インターフェイス

XIAM の囲碁遊び場は、公式遊び場に基づいて大幅に改良されました。含まれるもの:

ユーザー定義パッケージのサポート

安全でないサンドボックスのサポート、ユーザーはネットワーク、ファイルシステムなどにアクセス可能

フロントエンドのコンテナ化

カスタムパッケージを使用したい場合は、Dockerfileを変更する必要があります対応するサンドボックスの

FROM xiam/go-playground/unsafebox

RUN go get github.com/myuser/mypackageRUN go get github.com/otheruser/otherpackage

ENTRYPOINT ["/go/bin/sandbox"]

その後、コンテナのイメージを再構築するだけです。

カスタム パッケージの問題は解決しましたが、このエディターはまだ弱すぎて、IPython のセグメント化された対話が欠けています。もっと良いものはありますか?

GopherNotes

IPython に似た Go 言語用対話型プログラミング インターフェイス

Jupyter の Notebook は実際にさまざまな言語カーネルをサポートできます。GopherNotes プロジェクトは Jupyter 用の Go 言語カーネルを提供します。

このプロジェクトは、現在はメンテナンスされていない Gore (igo カーネルに基づく) からインスピレーションを受けています。

IPython に似た Go 言語用対話型プログラミング インターフェイス

上記は Gophernotes を使用して行ったテストです。ループを実行する場合、In[7] に 1 行で記述すると、すべて OK になります。しかし、In[8]を3行書くと正しい結果が出力されません。

バックグラウンドで表示されるエラー:

Error running goimports:
/tmp/979860191/func_proxy.go:4:4: expected declaration, found 'for'
[I 08:18:56.621 NotebookApp] Saving file at /Untitled.ipynb


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Pythonの学習:2時間の毎日の研究で十分ですか?Pythonの学習:2時間の毎日の研究で十分ですか?Apr 18, 2025 am 12:22 AM

Pythonを1日2時間学ぶだけで十分ですか?それはあなたの目標と学習方法に依存します。 1)明確な学習計画を策定し、2)適切な学習リソースと方法を選択します。3)実践的な実践とレビューとレビューと統合を練習および統合し、統合すると、この期間中にPythonの基本的な知識と高度な機能を徐々に習得できます。

Web開発用のPython:主要なアプリケーションWeb開発用のPython:主要なアプリケーションApr 18, 2025 am 12:20 AM

Web開発におけるPythonの主要なアプリケーションには、DjangoおよびFlaskフレームワークの使用、API開発、データ分析と視覚化、機械学習とAI、およびパフォーマンスの最適化が含まれます。 1。DjangoandFlask Framework:Djangoは、複雑な用途の迅速な発展に適しており、Flaskは小規模または高度にカスタマイズされたプロジェクトに適しています。 2。API開発:フラスコまたはdjangorestFrameworkを使用して、Restfulapiを構築します。 3。データ分析と視覚化:Pythonを使用してデータを処理し、Webインターフェイスを介して表示します。 4。機械学習とAI:Pythonは、インテリジェントWebアプリケーションを構築するために使用されます。 5。パフォーマンスの最適化:非同期プログラミング、キャッシュ、コードを通じて最適化

Python vs. C:パフォーマンスと効率の探索Python vs. C:パフォーマンスと効率の探索Apr 18, 2025 am 12:20 AM

Pythonは開発効率でCよりも優れていますが、Cは実行パフォーマンスが高くなっています。 1。Pythonの簡潔な構文とリッチライブラリは、開発効率を向上させます。 2.Cのコンピレーションタイプの特性とハードウェア制御により、実行パフォーマンスが向上します。選択を行うときは、プロジェクトのニーズに基づいて開発速度と実行効率を比較検討する必要があります。

Python in Action:実世界の例Python in Action:実世界の例Apr 18, 2025 am 12:18 AM

Pythonの実際のアプリケーションには、データ分析、Web開発、人工知能、自動化が含まれます。 1)データ分析では、PythonはPandasとMatplotlibを使用してデータを処理および視覚化します。 2)Web開発では、DjangoおよびFlask FrameworksがWebアプリケーションの作成を簡素化します。 3)人工知能の分野では、TensorflowとPytorchがモデルの構築と訓練に使用されます。 4)自動化に関しては、ファイルのコピーなどのタスクにPythonスクリプトを使用できます。

Pythonの主な用途:包括的な概要Pythonの主な用途:包括的な概要Apr 18, 2025 am 12:18 AM

Pythonは、データサイエンス、Web開発、自動化スクリプトフィールドで広く使用されています。 1)データサイエンスでは、PythonはNumpyやPandasなどのライブラリを介してデータ処理と分析を簡素化します。 2)Web開発では、DjangoおよびFlask Frameworksにより、開発者はアプリケーションを迅速に構築できます。 3)自動化されたスクリプトでは、Pythonのシンプルさと標準ライブラリが理想的になります。

Pythonの主な目的:柔軟性と使いやすさPythonの主な目的:柔軟性と使いやすさApr 17, 2025 am 12:14 AM

Pythonの柔軟性は、マルチパラダイムサポートと動的タイプシステムに反映されていますが、使いやすさはシンプルな構文とリッチ標準ライブラリに由来しています。 1。柔軟性:オブジェクト指向、機能的および手続き的プログラミングをサポートし、動的タイプシステムは開発効率を向上させます。 2。使いやすさ:文法は自然言語に近く、標準的なライブラリは幅広い機能をカバーし、開発プロセスを簡素化します。

Python:汎用性の高いプログラミングの力Python:汎用性の高いプログラミングの力Apr 17, 2025 am 12:09 AM

Pythonは、初心者から上級開発者までのすべてのニーズに適した、そのシンプルさとパワーに非常に好まれています。その汎用性は、次のことに反映されています。1)学習と使用が簡単、シンプルな構文。 2)Numpy、Pandasなどの豊富なライブラリとフレームワーク。 3)さまざまなオペレーティングシステムで実行できるクロスプラットフォームサポート。 4)作業効率を向上させるためのスクリプトおよび自動化タスクに適しています。

1日2時間でPythonを学ぶ:実用的なガイド1日2時間でPythonを学ぶ:実用的なガイドApr 17, 2025 am 12:05 AM

はい、1日2時間でPythonを学びます。 1.合理的な学習計画を作成します。2。適切な学習リソースを選択します。3。実践を通じて学んだ知識を統合します。これらの手順は、短時間でPythonをマスターするのに役立ちます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境