从Python脚本运行C#应用程序
我刚刚完成了一个相对较大的疾病传播模型的编码,使用的是C#。不过,我对.NET还比较陌生,不太确定接下来该怎么做。目前,我只需双击.exe文件,模型就会从文本文件中导入配置设置,运行并将结果输出到一个文本文件中。
接下来我想做的是写一个Python脚本,完成以下几件事:
- 运行模拟N次(N大于1000)
- 每次运行后重命名输出文件并保存(比如:./output.txt改成./acc/outputN.txt)
- 汇总、解析和分析输出结果
- 以某种整洁的格式输出结果(可能是Excel)
到目前为止,我大部分的编程经验都是在Linux上用C/C++。对于最后两项我比较有信心,但对于前两项我完全不知道该怎么做。以下是我想咨询的一些具体问题:
- 从Python脚本运行我的C# .exe文件,最简单或最好的方法是什么?
- 有没有人能给我一些关于在Windows系统上进行文件系统操作的建议?
谢谢!
2 个回答
3
你的问题可以通过Python标准库中的'os'模块来解决。关于如何进行各种操作,比如处理文件和启动程序的说明,可以在这里找到。
关于进程管理(运行你的C#程序)可以在这里查看,而文件操作的相关内容在这里。
补充说明:其实,关于进程的内容,你应该使用subprocess模块。
13
从Python 2.6版本开始,你应该使用subprocess
模块来处理子进程的相关操作。你可以在这里查看详细的文档:(文档链接)
import subprocess
for v in range(1000):
cmdLine = r"c:\path\to\my\app.exe"
subprocess.Popen(subprocess)
subprocess.Popen(r"move output.txt ./acc/output-%d.txt" % (v))