Python.NET:Pythonと.NETを連携させるパッケージ

以前NumSharpを調べた時に



Pythonと.NETを連携させるPython.NETの存在を知った。MITライセンスなので商用利用も可能です。

Python.NET

Python.NET (pythonnet)はPythonプログラマがWindowsの.NET 4.0+共通言語ランタイム(CLR)、およびLinuxとOSXのMonoランタイムとほぼシームレスに統合できるようにするパッケージです。Python.NETは.NET開発者向けの強力なアプリケーションスクリプトツールを提供します。このパッケージを使用することで、CLR (C#, VB.NET, F#, C++/CLI)を対象とする任意の言語で記述された.NETサービスとコンポーネントを使用して、.NETアプリケーションをスクリプト化したり、Pythonで.NETアプリケーション全体を構築できます。

Pythonから.NETを呼べるし、.NETからPythonを呼べる。

Python.NETGitHubで公開されており、インストール方法はGitHubWikiを参照。



試した方々の記事↓
https://qiita.com/hogegex/items/3743225a7af13e93df78
https://tadaoyamaoka.hatenablog.com/entry/2020/06/02/214308

IronPythonのように別途特別な実行環境を用意するわけでは無く、純粋にPython環境を叩けるということなので、最近の機械学習系のライブラリもそのまま.NETから利用できるらしい。

以前はIronPythonぐらいしか.NET連携の手段が無かったから、対応していないパッケージが多かったよな。



気になるのは「Unityでも使えるのか」という点ですが、「Unityで動かした」という書き込みと共に「クラッシュした」という報告も見かけるのでなんとも。。。

2023年 追記:
Python Embeddable PackageをUnityのStreamingAssetsフォルダに配置して、ビルドしたアプリに同梱・配布する方法(Windows限定)↓
https://zenn.dev/shiena/articles/unity-python

関連記事

OpenSfM:PythonのStructure from ...

Web経由でRaspberry PiのGPIOを操作したい

定数

OpenCV 3.1のsfmモジュールを試す

C++始めようと思うんだ

Gource:バージョン管理の履歴を可視化するツール

Kaolin:3Dディープラーニング用のPyTorchライブ...

まだ続くブログの不調

Oculus Goを購入!

OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...

Open Shading Language (OSL)

オープンソースのIT資産・ライセンス管理システム『Snipe...

このブログのデザインに飽きてきた

OpenAR:OpenCVベースのマーカーARライブラリ

ROMOハッカソンに行ってきた

スクレイピング

SDカードサイズのコンピューター『Intel Edison』

Human Generator:Blenderの人体生成アド...

タマムシっぽい質感

Google App Engineのデプロイ失敗

OpenGVの用語

3Dモデルを立体視で確認できるVRアプリを作っている

Mask R-CNN:ディープラーニングによる一般物体検出・...

Pythonの自然言語処理ライブラリ『NLTK(Natura...

Blender 2.8がついに正式リリース!

オープンソースのプリント基板設計ツール『KiCad』

Python拡張モジュールのWindows用インストーラー配...

Mechanizeで要認証Webサイトをスクレイピング

MeshroomでPhotogrammetry

GAN (Generative Adversarial Ne...

Super Resolution:OpenCVの超解像処理モ...

bpy-renderer:レンダリング用Pythonパッケー...

Unityの各コンポーネント間でのやり取り

pythonの機械学習ライブラリ『scikit-learn』

TorchStudio:PyTorchのための統合開発環境と...

CGレンダラ研究開発のためのフレームワーク『Lightmet...

3Dスキャンしたテクスチャから照明を除去するUnityツール...

法線マップを用意してCanvas上でShadingするサンプ...

python-twitterで自分のお気に入りを取得する

C++ 標準テンプレートライブラリ (STL)

OpenCVで顔のモーフィングを実装する

OpenCVの超解像(SuperResolution)モジュ...

コメント