我有一个Python方法,它接受一些参数并返回一个值。我试图使用IronPython从我的C#代码中调用它。
Python方法就像:
def encrypt(K,CHARS,param):
L = len(param)
e = pyffx.String(K, alphabet=CHARS, length=L)
return e.encrypt(param)
// C#
var options = new Dictionary<string, object> { ["Debug"] = true };
options["Frames"] = true;
options["FullFrames"] = false;
ScriptRuntime ipy = Python.CreateRuntime(options);
ScriptEngine engine = ipy.GetEngine("py");
var paths = engine.GetSearchPaths();
paths.Add(@"C:\Program Files (x86)\IronPython 2.7\Lib");
paths.Add(@"C:\Python27\Lib");
paths.Add(@"C:\Python27\Lib\site-packages");
engine.SetSearchPaths(paths);
dynamic pythonscript = ipy.UseFile("encryptclient.py");
string s= pythonscript.encrypt("abc", "xyz", "");
我不熟悉Python。有些人可以指导我传递参数或调用这个python方法的方式。