我想知道标准库中是否有一个函数可以接受 print 函数将打印的任何内容并将其作为字符串返回。似乎应该有,但如果它在那里,我没有找对地方。
我的情况是我做了一个编程练习,创建(经过一些计算)存储在列表中的一串数字,例如,
digits=[1, 0, 0, 1, 0, 1, 0, 0, 0, 1]
和小数点的位置dp=4
我想把它变成看起来像小数的东西。打印功能可以很好地显示我想要的内容:
print(*(digits[:dp + 1] + ['.'] + digits[dp + 1:]), sep='')
生产10010.10001
但如果我想将此结果作为字符串返回,我似乎必须编写额外的代码。并不是说这很困难,但如果已经内置了一些东西,那就没有必要了。打印、格式或 % 操作符似乎都不起作用。我能找到的最接近的东西是 StringIO 类,但我希望有一些更简单且不那么神秘的东西。