在C#中调用使用python第三方库的python文件
最近用到在C#下调用python脚本的问题,从网上查看资料,主流都是使用InronPython的方式,但他只支持python2,会出现各种各样的坑,网上也有不少解决办法,如:https://blog.csdn.net/taonull/article/details/42923015
给出了不错的解决办法,无奈亲测无效,可能是因为版本原因,经过自己实验,发现添加第三方库路径的办法必须要有该方法的.egg文件,然而很不巧我第三方库的安装路径中并没有.egg文件,故放弃。第二种解决办法是通过调用Process类启动电脑上的python.exe,运行python脚本。
python文件为:CUT.py
新建窗体应用,在button下添加事件:
private void button1_Click(object sender, EventArgs e)
{
string sAruments = @"CUT.py";//要处理的python文件名
RunPythonScript(sAruments);
}
编写RunthonScript
方法
public static void RunPythonScript(string sArgName)
{
Process p = new Process();
string path = "CUT.py";// 待处理python文件的路径
string sArguments = path;
//下面为启动一个进程来执行脚本文件设置参数
p.StartInfo.FileName = @"E:\anaconda3\python.exe"; //注意路径
p.StartInfo.Arguments = sArguments;//这样参数就是CUT.py 路径1 路径2 路径3....
Console.WriteLine(sArguments);
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start();//启动进程
}
好了,OJBK。
参照采坑https://blog.csdn.net/qq_15642411/article/details/79028855
转载自:https://blog.csdn.net/douminan/article/details/83008287