【发布时间】:2016-09-13 01:16:52
【问题描述】:
我正在编写一个 python 脚本,其中包含一个包含 python 打印语句作为字符串的列表。在我的函数中,我使用 for 循环来运行 exec 函数来运行这些语句。
这是我的功能:
g_list = ["print('Wow!')\n", "print('Great!')\n", "print('Epic!')\n"]
def run_statements():
for item in g_list:
exec(item)
当我运行run_statements() 函数时,我得到以下输出:
Wow!
Great!
Epic!
基本上,我想将输出保存为字符串,以便以后可以将其保存到我的数据库中。
有人知道我该怎么做吗?
编辑:在以下问题上:python: get the print output in an exec statement 他正在尝试获取输出,我的问题与我试图以字符串形式获取输出的方式不同
【问题讨论】:
-
print的重点是将文本发送到某处,而不是将其保存在内存中。如果你想把它保存为一个字符串,你应该简单地这样做,然后在适当的时候打印它。此外,对于您要实现的任何目标,exec很可能是错误的方法。 -
您能否给出您期望的最终结果的准确样本输出?你说的是字符串
. So you want:"哇!\n太棒了!\n史诗\n"`? -
@idjaw 是的!这正是我想要的
-
@idjaw 这样会给出语法错误
-
@Elisha512 查看发布的副本。