Som*_*ura 5 word-wrap python-3.x output jupyter-notebook
默认情况下,Jupyter笔记本的输出单元格中的较长文本行将被换行。如何停止这种行为?
小智 10
如果您不想弄乱配置文件,您可以通过调用 IPython.core.display 函数来临时修改笔记本的行为。然后添加@atevm 建议的 CSS:
from IPython.core.display import display, HTML
display(HTML("<style>div.output_area pre {white-space: pre;}</style>"))
for line in range(5):
for num in range(70):
print(f" {num}", end="")
print()
Run Code Online (Sandbox Code Playgroud)
Lui*_*raz 10
您可以使用 html magic 命令。通过检查输出单元格来检查 CSS 选择器是否正确,然后相应地编辑以下内容。
%%html
<style>
div.output_area pre {
white-space: pre;
}
</style>
Run Code Online (Sandbox Code Playgroud)
我可以通过custom/custom.css在 Jupyter 用户配置中的文件中添加一个简单的 CSS 规则来解决这个问题:
/*Disable code output line wrapping*/
div.output_area pre {
white-space: pre;
}
Run Code Online (Sandbox Code Playgroud)
结果:
选择规则的代码输出区域的预格式化文本区域(CSS 属性集)div.output_area pre。pre该white-space属性规定浏览器应如何在选定的 HTML 元素中显示空格,其pre值是浏览器仅在换行符\n和<br>元素处中断。
根据Can I Use,此 CSS 在我的 Firefox v70.0 和 Chorme v78.0.3904.97 上渲染良好(带有精细的水平滚动条),该white-space: pre属性和值应该适用于所有现代桌面浏览器。
您可以通过运行以下 shell 命令来找出配置所在的位置:
jupyter --config
Run Code Online (Sandbox Code Playgroud)
如果您想进行进一步的样式修改,只需在 Jupyter Notebook 选项卡上使用您最喜欢的浏览器的检查器即可。您可以在其中修改 CSS,而不会产生永久影响。
正如 kiesel 评论的那样:在 JupyterLab 中,父 div 的类更改为jp-OutputArea-output. 然而还有另一个问题:Jupyter Lab 不读取该custom/custom.css文件。有两种方法可以解决这个问题。
就我而言,我编辑了该~/miniconda3/envs/< env name >/share/jupyter/lab/themes/@jupyterlab/theme-dark-extension/index.css文件并添加了以下代码。
jupyter --config
Run Code Online (Sandbox Code Playgroud)
当然,此修复仅适用于您编辑主题 index.css 的一个特定环境。因此我不推荐它。
这位好心的家伙为 Jupyter Lab制作了一个主题,它允许您包含自定义 CSS 文件。
| 归档时间: |
|
| 查看次数: |
538 次 |
| 最近记录: |