如何解决如何不使用Jupyter捕获所有Python解释器输出
当我在Python3解释器中并键入下面的三个输入语句时,我看到“ 1”显示了两次,作为第二和第三条语句的显示输出。
a = 1
a`
print(a)
如果这些语句在文件中,例如test.py
,并且我调用python3 test.py
,则只会看到对print
的调用的输出。我对subprocess
很熟悉,它也只给我一个1。但是,如果我在Jupyter笔记本中进行同样的操作,我会看到两个返回的1都保存在笔记本中。我知道我可以以批处理方式以编程方式运行Jupyter笔记本。
我可以在不使用Jupyter的情况下从Python做类似的事情吗?也就是说,我想要所有的解释器输出,而不仅仅是print
的输出。
更新
您可以看到Jupyter笔记本如何存储常规数据输出和stdout输出:
{
"cell_type": "code","execution_count": 1,"metadata": {},"outputs": [],"source": [
"a = 1"
]
},{
"cell_type": "code","execution_count": 2,"outputs": [
{
"data": {
"text/plain": [
"1"
]
},"output_type": "execute_result"
}
],"source": [
"a"
]
},"execution_count": 3,"outputs": [
{
"name": "stdout","output_type": "stream","text": [
"1\n"
]
}
],"source": [
"print(a)"
]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。