измените свой код Python на следующее:
import time
import sys
for i in range(5):
print("Hello World " + str(i))
sys.stdout.flush()
time.sleep(1)
или просто отредактируйте ваш код на c # и используйте ключ -u:
var cmd = "-u C:/Users/user/Documents/script.py";
Когда стандартный вывод перенаправлялся, событие в C # не вызывалось при записи строки на консоли, потому что не было вызовов stdout.flush;
Помещение оператора stdout.flush () после каждого оператора печати приводило к тому, что события запускались, как и должно быть, и C # теперь захватывает вывод по мере его поступления.
Или вы можете просто использовать ключ -u.