Получение вывода подпроцесса python

Я пытаюсь зафиксируйте вывод здесь. Если в командной строке python я запускаю

p = subprocess.Popen(["/path/to/search_by_hash.par", hash_str], 
                      stdout=subprocess.PIPE)

Возвращаемое значение (список) выводится на стандартный вывод, но не сохраняется

[4460475, 4406612, 4379510]

Я пробовал продолжить его с помощью

value = p.communicate()[0]
value

.. но значение - это пустая строка , а не список целых чисел, который я ожидал, и который выводится на стандартный вывод

. Я экспериментировал с решениями из Сохранить вывод вызова subprocess.Popen в строке , но не смог захватить вывод.

ОБНОВЛЕНИЕ:

stderr, похоже, тоже ничего не дает ... и список, который я ищу , распечатывается ... просто мне не повезло с захват. См. Ниже:

>>> p = subprocess.Popen(["/home/jfry/tools/search_by_hash.par", hash_str], 
                          stdout=subprocess.PIPE)
>>> 
[4460475, 4406612, 4379510]
    value, err  = p.communicate()
>>> value
''
>>> err

Спасибо!

7
задан Community 23 May 2017 в 11:53
поделиться