C#通过命令行调用Python脚本

执行方式分为两步:

        1.启动cmd.exe。

        2.命令行中输入python XXXX.py指令。

1. C#启动命令行

        使用Process进程类,该类在System.Diagnostics名称空间下。

using System.Diagnostics;

1.1声明对象 

Process process;
ProcessStartInfo processInfo;

1.2填充目标信息

processInfo = new ProcessStartInfo();


processInfo.FileName = @"cmd.exe";    //目标文件,未配置环境变量时需填写绝对路径

processInfo.UseShellExecute = true;

processInfo.CreateNoWindow = true;

1.3启动进程

process = Process.Start(processInfo);

        执行后可以看到命令行启动,且启动目录为C#项目的exe文件所在的目录。

 

2. 使用命令行启动Python脚本

        在命令行中输入 python C:\xxx\xxx.py 可执行绝对路径下的python文件,前提是配置了python环境变量,你需要保证python是一个有效指令。如果python文件位于当前目录则可直接输入 python xxx.py

 

2.1使用C#代码代替这些步骤

        修改原有代码

processInfo.FileName = @"cmd.exe";

processInfo.Arguments = "/C XXXX.py";
// processInfo.Arguments  = "/C C:/xxxx/xxxx.py";    

processInfo.UseShellExecute = false;    //使用Shell执行将无法启用RedirectStandardOutput

processInfo.RedirectStandardOutput = true;

processInfo.CreateNoWindow = true;

        执行进程

progressTest = Process.Start(start);

string output = progressTest.StandardOutput.ReadToEnd();    //将执行后的结果全部读取


textBoxContent.text = output;    //可以以其他任何方式显示

        

        执行的python文件,使用print将C#想获取的值输出。

import numpy as np
import matplotlib.pyplot as plot

.....

print(ListOject);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值