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

関連記事

まだ続くブログの不調

OpenCVのバージョン3が正式リリースされたぞ

OpenMVSのサンプルを動かしてみる

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

続・ディープラーニングの資料

ポリゴンジオメトリ処理ライブラリ『pmp-library (...

オープンソースの人体モデリングツール『MakeHuman』の...

UnityのGameObjectの向きをScriptで制御す...

OpenCVの三角測量関数『cv::triangulatep...

OpenCVで顔のランドマークを検出する『Facemark ...

ブログが1日ダウンしてました

PGGAN:段階的に解像度を上げて学習を進めるGAN

3Dグラフィックスの入門書

R-CNN (Regions with CNN featur...

Google Colaboratoryで遊ぶ準備

GoB:ZBrushとBlenderを連携させるアドオン

Raspberry Pi 2を買いました

Kornia:微分可能なコンピュータービジョンライブラリ

iPhone・iPod touchで動作する知育ロボット『R...

Rerun:マルチモーダルデータの可視化アプリとSDK

ManuelBastioniLAB:人体モデリングできるBl...

Javaで作られたオープンソースの3DCGレンダラ『Sunf...

スクレイピング

オープンソースの取引プラットフォーム

オープンソースの物理ベースレンダラ『Mitsuba』をMay...

UnityでOpenCVを使うには?

RSSフィードを読込んで表示するWordpressプラグイン...

Raspberry Piでセンサーの常時稼働を検討する

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

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

BlenderでPhotogrammetryできるアドオン

WordPress on Google App Engine...

ブログをGoogle App EngineからAmazon ...

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

Pylearn2:ディープラーニングに対応したPythonの...

FreeMoCap Project:オープンソースのマーカー...

DensePose:画像中の人物表面のUV座標を推定する

Boost オープンソースライブラリ

C++の抽象クラス

UnityでPoint Cloudを表示する方法

書籍『仕事ではじめる機械学習』を読みました

Unityで学ぶC#

コメント