我用的是ipython Jupyter笔记本。假设我定义了一个函数,它在屏幕上占据了很大的空间。有办法让细胞崩溃吗?
我希望函数保持执行和可调用,但我想隐藏/折叠单元格,以便更好地可视化笔记本。我该怎么做呢?
我用的是ipython Jupyter笔记本。假设我定义了一个函数,它在屏幕上占据了很大的空间。有办法让细胞崩溃吗?
我希望函数保持执行和可调用,但我想隐藏/折叠单元格,以便更好地可视化笔记本。我该怎么做呢?
当前回答
您可以创建一个单元格,并将以下代码放在其中:
%%html
<style>
div.input {
display:none;
}
</style>
运行此单元格将隐藏所有输入单元格。要显示它们,可以使用菜单清除所有输出。
否则,你可以尝试笔记本扩展如下:
https://github.com/ipython-contrib/IPython-notebook-extensions/wiki/Home_3x
其他回答
您可以创建一个单元格,并将以下代码放在其中:
%%html
<style>
div.input {
display:none;
}
</style>
运行此单元格将隐藏所有输入单元格。要显示它们,可以使用菜单清除所有输出。
否则,你可以尝试笔记本扩展如下:
https://github.com/ipython-contrib/IPython-notebook-extensions/wiki/Home_3x
JupyterLab支持细胞折叠。单击左侧的蓝色单元格条将折叠单元格。
我用来得到理想结果的方法是:
将下面的代码块保存在一个名为toggle_cell.py的文件中,该文件位于与笔记本相同的目录中
from IPython.core.display import display, HTML
toggle_code_str = '''
<form action="javascript:code_toggle()"><input type="submit" id="toggleButton" value="Show Sloution"></form>
'''
toggle_code_prepare_str = '''
<script>
function code_toggle() {
if ($('div.cell.code_cell.rendered.selected div.input').css('display')!='none'){
$('div.cell.code_cell.rendered.selected div.input').hide();
} else {
$('div.cell.code_cell.rendered.selected div.input').show();
}
}
</script>
'''
display(HTML(toggle_code_prepare_str + toggle_code_str))
def hide_sloution():
display(HTML(toggle_code_str))
在笔记本的第一个单元格中添加以下内容
from toggle_cell import toggle_code as hide_sloution
需要添加切换按钮的任何单元格只需调用hide_sloution()
我有同样的问题,我发现这个扩展有用
pip install aquirdturtle_collapsible_headings
你不需要做太多,除了启用扩展:
http://localhost:8888/nbextensions?nbextension=collapsible_headings
http://localhost:8888/nbextensions?nbextension=codefolding/main
很可能你会在这里找到你所有的扩展:
http://localhost:8888/nbextensions