在程序中写入stdin?

时间:2013-10-02 07:51:53

标签: python stdin

是否有办法在程序中执行sys.stdin.write("text")之类的操作,以模拟从用户输入的文本, 而不是使用input()或等效的,并等待用户输入内容?

我在问,因为我的程序中有一个我无法解决的错误,该错误已于昨天发布但到目前为止还没有答案,这是我的最后一招。

(Windows XP,Python3.3)

感谢。

1 个答案:

答案 0 :(得分:1)

有各种各样的黑客可以实现这一目标,例如

from io import StringIO
import sys

sys.stdin = StringIO("user says hello!")

这应该适用于各个模块。同样,您可以将sys.stdin替换为附加到一系列预设用户输入的流。