C↉呼び出しPythonスクリプトとPythonを使用した第三者モジュール
C↉呼び出しPythonスクリプトとPythonを使用した第三者モジュール Cは、PythonスクリプトとPythonを使用したサードパーティモジュールを呼び出します. 参照ライブラリを追加する CコードにはPython が埋め込まれています. Pythonコードをファイルから読み込む Pythonを使用してインストールされた第3のモジュール 私のホームページです.
NETで実現したPython言語は、IroPythonを使って、NET環境でPythonコードを呼び出すことができます.
【参照ライブラリの追加】
Visual Studioに新しいプロジェクトを作成した後、IronPyton.dllとMicrosoft.Scripptingn.dllを参照してください.
【C〓コードにPythonを埋め込む】
の一番簡単な使い方は以下の通りです.
普通の状況では、Pythonコードを単独でファイルに書きます.プロジェクトにPythonファイルを新たに作成し、ハロー.pyのように、直接にリリースパスの下に構築すればいいです.(また、そのプロパティCopy to Output Directoryの値はCopy if newerとしても設定できます.)ハロー.pyで下記のコードを作成します.
pythonのライブラリは直接スクリプトから呼び出すことができますが、第三者ライブラリの直接呼び出しには以下のエラーが発生します.
NETで実現したPython言語は、IroPythonを使って、NET環境でPythonコードを呼び出すことができます.
【参照ライブラリの追加】
Visual Studioに新しいプロジェクトを作成した後、IronPyton.dllとMicrosoft.Scripptingn.dllを参照してください.
【C〓コードにPythonを埋め込む】
の一番簡単な使い方は以下の通りです.
var engine = IronPython.Hosting.Python.CreateEngine();
engine.CreateScriptSourceFromString("print 'hello world!'").Execute();
【ファイルからPythonコードを読み込む】普通の状況では、Pythonコードを単独でファイルに書きます.プロジェクトにPythonファイルを新たに作成し、ハロー.pyのように、直接にリリースパスの下に構築すればいいです.(また、そのプロパティCopy to Output Directoryの値はCopy if newerとしても設定できます.)ハロー.pyで下記のコードを作成します.
#
def say_hello():
print "hello!"
#
def get_text():
return "text from hello.py"
#
def add(arg1, arg2):
return arg1 + arg2
C铅コードは以下の通りです.// python
var engine = IronPython.Hosting.Python.CreateEngine();
var scope = engine.CreateScope();
var source = engine.CreateScriptSourceFromFile("hello.py");
source.Execute(scope);
//
var say_hello = scope.GetVariableobject>>("say_hello");
say_hello();
//
var get_text = scope.GetVariableobject>>("get_text");
var text = get_text().ToString();
Console.WriteLine(text);
//
var add = scope.GetVariableobject, object, object>>("add");
var result = add(1, 2);
Console.WriteLine(result);
【Pythonでインストールした第三モジュール】pythonのライブラリは直接スクリプトから呼び出すことができますが、第三者ライブラリの直接呼び出しには以下のエラーが発生します.
An unhandled exception of type 'IronPython.Runtime.Exceptions.ImportException' occurred in Microsoft.Dynamic.dll
Additional information: No module named rsa
表示はモジュールが見つからないので、sys.pathを設定すればいいです.以下の通りです.import sys
sys.path.append('C:\\Python27\\lib')
sys.path.append('C:\\Python27\\lib\\site-packages\\setuptools-12.0.3-py2.7.egg')
sys.path.append('C:\\Python27\\lib\\site-packages\\rsa-3.1.1-py2.7.egg')
import rsa