Numpy有配置文件吗?

时间:2013-08-23 22:26:34

标签: python configuration numpy environment-variables configuration-files

我经常从命令行使用Numpy并且总是要记住应用一些重复设置,例如设置输出格式:

np.set_printoptions(threshold=np.NaN, precision=3, suppress=True, linewidth=180)

是否有一个全局Numpy配置文件会自动为新的Python shell执行,或者在导入期间可以执行此操作?如果没有,是否有一种优雅的方式来实现这种效果?

2 个答案:

答案 0 :(得分:3)

我不知道专门针对numpy的配置文件,但如果您使用IPython,则可以set up a profile以便在打开新的IPython shell时自动设置这些打印选项。

创建新的配置文件(您可以省略名称以创建默认配置文件)

$ ipython profile create fancyprint

然后编辑配置文件,该文件应该位于~/.config/ipython/profile_fancyprint/ipython_config.py

取消注释这一行:

# c.TerminalIPythonApp.exec_lines = []

并添加要在启动时执行的行:

c.TerminalIPythonApp.exec_lines = [
    'import numpy as np',
    'np.set_printoptions(threshold=np.NaN, precision=3, suppress=True, linewidth=180)'
    ]

然后您可以使用命名的配置文件

启动IPython
$ ipython --profile=fancyprint

应自动设置阵列打印选项。

答案 1 :(得分:2)

我不知道numpy的这样的配置文件(对于matplotlib,例如你有the matplotlibrc file)。

但是,作为一种解决方法,您可以将environment variable PYTHONSTARTUP设置为指向Python脚本,该脚本将在每次Python部分启动时执行任何操作。

在我的情况下,我将它用于import numpy as npimport matplotlib.pyplot as plt,因此......每次我想快速尝试使用Python时,都会节省少量的“开销”。

Windows上的示例:

set PYTHONSTARTUP=C:\Users\yourlogin\somewhere\startup.py

Linux上的示例:

export PYTHONSTARTUP=/usr/local/bin/startup.py

您应该使用“控制面板\系统”将其设置为一次,例如,在Windows上。