Запустите приложение C# из сценария Python

Я примерно закончил кодировать прилично размерную модель передачи болезни в C#. Однако я довольно плохо знаком с.NET и не уверен, как продолжить двигаться. В настоящее время я просто дважды щелкаю по .exe файлу, и конфигурация импорта модели, сходящая с текстовых файлов, делает свою вещь и производит результаты в текстовый файл.

Что я хотел бы сделать, затем запись сценарий Python, чтобы сделать следующее:

  • Выполните моделирование N времена (N> 1000)
  • После каждого выполнения переименовывают выходной файл и хранилище (т.е. ./output.txt-> ./acc/outputN.txt)
  • Агрегат, синтаксический анализ, и анализируют выводы
  • Произведите результат в некотором чистом формате (возможно Excel)

Большинство моего опыта программирования до настоящего времени было в C/C++ на Linux. Я довольно уверен в последних двух объектах; однако, я понятия не имею, как продолжить двигаться для первых двух. Вот некоторые конкретные вопросы, относительно которых я хотел бы совет:

  • Что самый легкий / лучший способ состоит в том, чтобы выполнить мой C# .exe из сценария Python?
  • У кого-либо есть совет относительно лучшего способа сделать операции файловой системы в Python в системе Windows?

Спасибо!

7
задан UmNyobe 1 May 2014 в 10:29
поделиться

2 ответа

Начиная с Python 2.6+, вы должны использовать модуль подпроцесса : ( Docs )

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))
11
ответ дан 6 December 2019 в 15:18
поделиться

Ответ на ваши проблемы можно найти в 'os' стандартной библиотеки Python. Документацию по выполнению различных операций, таких как обработка файлов и запуск процессов, можно найти здесь .

Управление процессами (запуск вашей программы C #) можно найти здесь , а файловые операции здесь .

РЕДАКТИРОВАТЬ: Фактически, вместо указанной выше ссылки на процесс, вы должны использовать модуль подпроцесса .

3
ответ дан 6 December 2019 в 15:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: