【发布时间】:2017-10-28 16:18:34
【问题描述】:
在python中,下面将让我们写信给stdout:
import sys
sys.stdout.write("blah %d" % 5)
但是,我希望灵活选择打印到哪个流。我想将流作为参数传递给函数,就像在任何C 派生语言中调用fprintf 时一样。在上面源代码的 sn-p 中,stdout 被硬编码到 write-statement 中。但是,我们希望灵活地决定写入哪个流。我们可能想要stderr,或者其他一些流而不是stdout。
【问题讨论】:
-
def something(stream): stream.write('blah %d' % 5); something(sys.stderr)可以正常工作;你能澄清一下你到底想达到什么目标吗? -
如果
sys.stderr或sys.stdout都可以从任何地方访问,为什么还需要传递?
标签: python python-3.x dictionary file-io ascii