Python 初学者 : outputting function-generated text to file

标签 python python-2.7

这里是 Python 新手,运行 2.7。

我正在尝试创建一个程序,该程序使用一个函数生成文本,然后将函数生成的文本输出到一个文件中。

我在 Python 中打印函数没有问题

我在输出手动输入的文本时没有问题:(像这样)http://codepad.org/JrcUTZfC

但是当我尝试输出函数生成的文本时,它不起作用:http://codepad.org/Wyj5Li8Y

我通常会遇到“字符缓冲区”错误。

请让我知道我需要做哪些不同的事情。

最佳答案

您可能希望从函数返回字符串而不是打印它们。像这样:

def fn(a,b,c):
    return "Template string {0} {1} {2}".format(a,b,c)

至于迭代/串联部分,这应该可以满足您的需要。请注意,换行符 ('\n') 需要显式添加,如果您使用的是打印,则不会出现这种情况。

def iter_cat(a,b):
    x = ""
    while a < b:
        x += 'This is string {0}, {1}\n'.format(a,b) # x gets previous x with "This.." appended
        a += 1
    return x

谢谢。

关于Python 初学者 : outputting function-generated text to file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11765105/

相关文章:

python - 使用 python 搜索特定重复

python - 从 Python 列表中有效地删除非常接近的重复项

python - 在 Python 中迭代 URL 列表 - bs4

python - 使用 zlib 解压 Python 请求响应

python - Pandas 列的矢量化 "and"

python - 使用 Python 打印多个数组中的值

python - Python 中的文字游戏服务器,设计优缺点?

python - 如何将 pythonic double for 循环转换为标准代码?

python - 阻塞执行直到条件满足

python - 禁用 PyYAML 值转换