有会用c#调用python的吗?
推荐于2016-04-17 · 知道合伙人软件行家
关注
展开全部
给你两种方法,一种是调用一般的python程序,另一种是直接调用IronPython程序。
第一种:
void RunPythonScript(string path, string args = "")
{
path = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "script\\" + path;
p.StartInfo.FileName = "python.exe";
string sArguments = "\"" + path + "\"";
if (args.Length > 0)
{
sArguments += " " + args;
}
//p.StartInfo.WorkingDirectory = "D:\\";
p.StartInfo.Arguments = sArguments;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
//p.CloseMainWindow();
p.WaitForExit();
}`
第二种:
代码需要引用两个命名空间IronPython和Microsoft.Scripting (文件位置分别为IronPython 2.7的安装目录下的IronPython.dll和Microsoft.Scripting.dll)。
public static void test1()
{
var engine = IronPython.Hosting.Python.CreateEngine();
engine.CreateScriptSourceFromString("print 'hello world'").Execute();
Console.ReadLine();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询