passando dados para subprocess.check_output

Eu quero invocar um script, canalizando o conteúdo de uma string para seu stdin e recuperando sua stdout.

Eu não quero tocar no sistema de arquivos real, então não posso criar arquivos temporários reais para ele.

usandosubprocess.check_output Eu posso pegar o que o roteiro escreve; Como posso obter a seqüência de entrada em seu stdin embora?

<code>subprocess.check_output([script_name,"-"],stdin="this is some input")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/subprocess.py", line 537, in check_output
    process = Popen(stdout=PIPE, *popenargs, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 672, in __init__
    errread, errwrite) = self._get_handles(stdin, stdout, stderr)
  File "/usr/lib/python2.7/subprocess.py", line 1043, in _get_handles
    p2cread = stdin.fileno()
AttributeError: 'str' object has no attribute 'fileno'
</code>

questionAnswers(3)

yourAnswerToTheQuestion