Список может быть извлечен непосредственно из y.txt
как
>>> with open('y.txt', 'r') as file:
... line = file.readlines()[0].split("'")[1::2]
...
>>> line
['I like dogs', 'Go home', 'This is the greatest Ice Cream ever']
. Вам нужно будет использовать несколько потоков, чтобы это не мешало вашему пользовательскому интерфейсу. У меня есть довольно большой служебный класс, который запускает процессы в собственном потоке и направляет делегированные события.
Извините, я бы привел пример, но на самом деле я очень тороплюсь. Но еще одна вещь, на которую вы должны обратить внимание при использовании сценариев Perl, - это то, что они плохо автоматически сбрасывают вывод. Вам необходимо указать:
local $| = 1;
Вверху вашего скрипта, который вы запускаете, чтобы он автоматически очищался.
Сначала необходимо обновить обработчик событий
void myProcess_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
if (txtOutput.InvokeRequired)
{
UpdateUIDelegate updateDelegate = new UpdateUIDelegate
(UpdateUI);this.Invoke(updateDelegate, e.Data);
}
else UpdateUI(e.Data);
}
и включите эту строку Ваш btnRun_Click
proc.WaitForExit();