news 2026/8/4 17:34:20

Web开发:C#通过ProcessStartInfo动态调用执行Python脚本

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本

一、代码思路

1.定义要传递的整数和字符串。
2.创建临时 Python 脚本内容。
3.将脚本写入临时文件。
4.配置并启动 Python 进程。
5.输出结果并删除临时文件。

二、代码

using System; using System.Diagnostics; class Program { static void Main(string[] args) { int numberToPass = 5; // 要传递的整数 string stringToPass = "Hello"; // 要传递的字符串 // 创建一个临时 Python 脚本 string tempFilePath = Guid.NewGuid().ToString() + ".py"; string pythonCode = @" import sys def process_data(num, text): num += 1 print(f'Number: {num}, String: {text}') if __name__ == '__main__': # 从命令行参数获取数据 num = int(sys.argv[1]) text = sys.argv[2] process_data(num, text)"; // 写入临时文件 System.IO.File.WriteAllText(tempFilePath, pythonCode); // 设置进程信息 ProcessStartInfo start = new ProcessStartInfo(); start.FileName = @"D:\Python\python.exe"; // Python 解释器路径 start.Arguments = $"{tempFilePath} {numberToPass} \"{stringToPass}\""; // 传递参数 start.UseShellExecute = false; // 不使用操作系统外壳启动 start.RedirectStandardOutput = true; // 重定向标准输出 start.RedirectStandardError = true; // 重定向标准错误 using (Process process = Process.Start(start)) { // 获取输出 string result = process.StandardOutput.ReadToEnd(); string error = process.StandardError.ReadToEnd(); process.WaitForExit(); // 输出结果 if (!string.IsNullOrEmpty(result)) { Console.WriteLine("Output: " + result); } if (!string.IsNullOrEmpty(error)) { Console.WriteLine("Error: " + error); } } // 删除临时文件 System.IO.File.Delete(tempFilePath); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/30 15:17:23

语音模型环境报错多?修复版镜像显著降低故障率

语音模型环境报错多?修复版镜像显著降低故障率 📖 项目简介 在语音合成(Text-to-Speech, TTS)的实际部署中,开发者常常面临一个令人头疼的问题:依赖冲突导致的环境报错频发。尤其是在使用基于 Hugging Face…

作者头像 李华
网站建设 2026/8/3 20:35:52

装机实战:UEFI和Legacy模式选择指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个装机模式决策助手,功能包括:1. 根据用户硬件配置自动检测兼容性 2. 针对不同操作系统(Windows10/11,Linux等)提供模式建议 3. 多系统引导配置向导 …

作者头像 李华
网站建设 2026/7/30 15:01:41

AI如何帮你解决移动热点设置问题?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个移动热点诊断修复工具,能够自动检测设备的热点设置问题。功能包括:1. 扫描系统网络配置 2. 分析热点服务状态 3. 检测驱动兼容性 4. 提供修复建议 …

作者头像 李华
网站建设 2026/8/2 16:41:30

多模态OCR系统:CRNN与其他AI模型的协同工作

多模态OCR系统:CRNN与其他AI模型的协同工作 📖 项目简介 在现代智能文档处理、自动化办公和视觉信息提取场景中,光学字符识别(OCR) 已成为不可或缺的核心技术。传统的OCR方法依赖于图像处理与模板匹配,难…

作者头像 李华
网站建设 2026/8/1 9:53:08

企业级语音中台构建:多租户TTS服务设计与实现思路

企业级语音中台构建:多租户TTS服务设计与实现思路 📌 背景与挑战:从单点能力到平台化服务 随着智能客服、有声内容生成、虚拟主播等AI应用场景的爆发式增长,高质量中文语音合成(Text-to-Speech, TTS) 已成…

作者头像 李华
网站建设 2026/7/31 14:37:58

LUCKSHEET在企业财务管理的5个实际应用案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个基于LUCKSHEET的企业财务管理系统模板,包含预算编制、费用报销、现金流预测等功能模块。要求实现多部门协同编辑,自动生成符合会计准则的财务报表&…

作者头像 李华