gpt4 book ai didi

python - ipython:如何设置终端宽度

转载 作者:IT老高 更新时间:2023-10-28 22:17:39 26 4
gpt4 key购买 nike

当我使用 ipython 终端 并想要打印一个有很多列的 numpy.ndarray 时,这些行会在大约 80 个字符(即行是 cca 80 个字符):

z = zeros((2,20))
print z

大概,ipython 期望我的终端有 80 列。然而事实上,我的终端有 176 个字符的宽度,我想使用全宽。

我尝试更改以下参数,但没有效果:

c.PlainTextFormatter.max_width = 160

我如何告诉 ipython 使用我的终端的全宽?

我在 Debian Wheezy 上使用 ipython 1.2.1

最佳答案

您可以使用

查看当前的线宽
numpy.get_printoptions()['linewidth']

并设置它

numpy.set_printoptions(linewidth=160)

自动设置打印宽度

如果您希望自动设置终端宽度,可以让 Python 执行启动脚本。因此,创建一个文件 ~/.python_startup.py 或任何您想调用的文件,其中包含以下内容:

# Set the printing width to the current terminal width for NumPy.
#
# Note: if you change the terminal's width after starting Python,
# it will not update the printing width.
from os import getenv
terminal_width = getenv('COLUMNS')
try:
terminal_width = int(terminal_width)
except (ValueError, TypeError):
print('Sorry, I was unable to read your COLUMNS environment variable')
terminal_width = None

if terminal_width is not None and terminal_width > 0:
from numpy import set_printoptions
set_printoptions(linewidth = terminal_width)

del terminal_width

要让 Python 每次都执行此操作,请打开您的 ~/.bashrc 文件,然后添加

# Instruct Python to execute a start up script
export PYTHONSTARTUP=$HOME/.python_startup.py
# Ensure that the startup script will be able to access COLUMNS
export COLUMNS

关于python - ipython:如何设置终端宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25583428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com