python重定向sys.out_python-来自Jupyter笔记本的stdout重定向已登陆...

因此,我尝试将Jupyter Notebook中某些单元格的stdout重定向到具有this的文件,然后使用this取消其余单元格的文件.第一组单元格的输出按原样放置在文件中.取消命令sys.stdout = sys .__ stdout__之后的第二组单元格没有输出,似乎什么也没做,但后来我意识到它降落在启动笔记本电脑的终端中.

它与完全相同的Python在Python解释器中完美工作:

(miniconda3-latest) cardamom@pegasus:~/Documents/project1 $python

Python 3.6.0 |Continuum Analytics, Inc.| (default, Dec 23 2016, 12:22:00)

[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> import sys

>>> sys.stdout = open('stdout.txt', 'w')

>>> print("a")

>>> print("a")

>>> print("a")

>>> sys.stdout = sys.__stdout__

>>> print ("b")

b

>>> print ("b")

b

>>> print ("b")

b

>>> # lots of a's are in the file and no b's

Jupyter笔记本中的类似方法是在终端中进行以下操作:

[W 22:05:34.192 NotebookApp] 404 GET /nbextensions/widgets/notebook/js/extension.js (127.0.0.1) 1.71ms referer=http://localhost:8889/notebooks/test_stdout.ipynb

b

b

b

如何修改此代码,以便在重置它之后,让b出现在通常用于输出而不是在终端的单元格下面?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值