c# - 使用c#运行2 pyhon.exe
问题描述
private void button1_Click(object sender, EventArgs e) {
doPython("python", "C:\\Users\\COM\\Desktop\\test_files\\data_cleaning.py");
textBox1.Text = "Data Cleaning...";
}
private void button4_Click(object sender, EventArgs e) {
doPython("python", "C:\\Users\\COM\\Desktop\\test_files\\indu.py");
textBox1.Text = "Deep learning processing...";
}
private static void doPython(string StartFileName, string StartFileArg) {
Process CmdProcess = new Process();
CmdProcess.StartInfo.FileName = StartFileName; //
CmdProcess.StartInfo.Arguments = StartFileArg; //
CmdProcess.StartInfo.CreateNoWindow = true; //
CmdProcess.StartInfo.UseShellExecute = false;
CmdProcess.StartInfo.RedirectStandardInput = true; //
CmdProcess.StartInfo.RedirectStandardOutput = true; //
CmdProcess.StartInfo.RedirectStandardError = true; //
CmdProcess.Start();
CmdProcess.BeginOutputReadLine();
CmdProcess.BeginErrorReadLine();
CmdProcess.WaitForExit();
CmdProcess.Close();
}
我想用c#来运行2个python,所以我设计了2个按钮,让它们运行不同的python文件,但是我发现只有第一个python文件可以工作,第二个不能进入doPython
,如何弄清楚这个?
解决方案
由于第一个按钮有效,执行第一个文件,我的想法是您可能正在处理以下问题之一:
- 位于的 Python 文件
C:\\Users\\COM\\Desktop\\test_files\\indu.py
不存在。如果是这种情况,请确保文件的路径正确,或确保文件存在于该路径中。 - 按钮事件处理程序未正确设置。如果是这种情况,请使用相同的代码重新实例化按钮事件处理程序。
希望这可以帮助!
推荐阅读
- python - TypeError:传递的参数无效:{'n_samples': 16000}
- python - 多个elif语句的Python顺序
- mysql - mysql导入操作期间如何忽略错误
- python - Networkx 无法读取我的 gml 文件:输入不是 ASCII 编码的
- python - 日历事件未获取 | 微软图形 API | 使用高级个人 Outlook 帐户
- python - matplotlib 动画期间的异常
- python - 在 matplotlib 中使用颜色
- coq - 如何在列表中应用模式匹配
- python-3.x - 如何用代码解决换行问题?
- php - 如何使数组的第一项活动和休息不活动