通过C#语言,可以直接调用python代码,下面是例子,请大家过目。
一、C#代码
首先,要引用如下的两个库
using IronPython.Hosting;
using Microsoft.Scripting.Hosting;
注意哦,除了要代码引用上述的库之外,还需要在下面中添加如上两个库的引用。
接着,下面是C#代码
ScriptRuntime pyRuntime = Python.CreateRuntime(); //创建一下运行环境
dynamic obj = pyRuntime.UseFile(@"F:\VS2013Webs\python\Python1\PyApp1\PyApp1\PyApp1.py"); //调用一个Python文件
int sum = obj.add(9, 9); //调用Python文件中的add函数并传递参数,获取返回值
string str = obj.hello();//调用Python文件中的hello()函数并获取返回值
MessageBox.Show(sum.ToString());
MessageBox.Show(str);
二、Python代码
import sys
print(sys.path)
def add(num1,num2):
return num1+num2;
def hello():
return "你好青山大队长";
三、注意事项
如果是C#直接调用简单的python代码,是一定能够成功的,但是,如果调用的python代码中包含有python第三方库一定出错误,并且,本人也没有找到合适的方法解决这个问题。
因此,要解决这种问题,可以使用C#调用CMD命令并传递参数再调用python代码,就可以正常使用第三方库了。至于C#调用CMD命令并传递参数再调用python代码的方法,以后再说了。