IPython / Spyder 不显示变量赋值的输出
IPython / Spyder do not show output of the assignment of a variable
我正在使用 Spyder 编写科学 Python 代码,但不知道以下问题是否真的是 Spyder 问题或 IPython 问题...
如果我创建一个变量(我想的是简单的类型,比如双精度数、ndarrays 等等),它的值不会在创建后立即显示。
例如,如果我这样做
s = x1 + x2
我希望看到(或者可以选择是否要看到)新创建的值s
。
使用这些设置,我需要输入
s
刚完成赋值就可以看到结果。
仅供参考,我正在寻找的行为是通过 ;
的存在与否在 Matlab 控制台中实现的
明确一点:我问这个问题是为了节省键入 s
(但有时名称更长)和回车笔画。所以你可以叫我懒惰
这不是 Python 的工作方式;作业没有值。
在 IPython/Spyder 中有一个隐藏的配置选项可以做到这一点,但只能使用 last 单元格分配。
In [1]: %config InteractiveShell.ast_node_interactivity='last_expr_or_assign'
In [2]: a = 1+1
Out[2]: 2
你也可以在你的IPython配置文件中设置它,它可以取的值为['all', 'last', 'last_expr', 'none', 'last_expr_or_assign']
来自 ipython --help-all
--InteractiveShell.ast_node_interactivity=<Enum>
'all', 'last', 'last_expr' or 'none', 'last_expr_or_assign' specifying which
nodes should be run interactively (displaying output from expressions).
Choices: any of ['all', 'last', 'last_expr', 'none', 'last_expr_or_assign']
Default: 'last_expr'
这可能并非在所有情况下都有效,例如元组分配、解包等,如果您遇到这些情况,请随时打开错误报告。
我还要警告您,IPython 中的内部工作方式非常棘手,因此可能会产生意想不到的后果。
我正在使用 Spyder 编写科学 Python 代码,但不知道以下问题是否真的是 Spyder 问题或 IPython 问题...
如果我创建一个变量(我想的是简单的类型,比如双精度数、ndarrays 等等),它的值不会在创建后立即显示。
例如,如果我这样做
s = x1 + x2
我希望看到(或者可以选择是否要看到)新创建的值s
。
使用这些设置,我需要输入
s
刚完成赋值就可以看到结果。
仅供参考,我正在寻找的行为是通过 ;
明确一点:我问这个问题是为了节省键入 s
(但有时名称更长)和回车笔画。所以你可以叫我懒惰
这不是 Python 的工作方式;作业没有值。
在 IPython/Spyder 中有一个隐藏的配置选项可以做到这一点,但只能使用 last 单元格分配。
In [1]: %config InteractiveShell.ast_node_interactivity='last_expr_or_assign'
In [2]: a = 1+1
Out[2]: 2
你也可以在你的IPython配置文件中设置它,它可以取的值为['all', 'last', 'last_expr', 'none', 'last_expr_or_assign']
来自 ipython --help-all
--InteractiveShell.ast_node_interactivity=<Enum>
'all', 'last', 'last_expr' or 'none', 'last_expr_or_assign' specifying which
nodes should be run interactively (displaying output from expressions).
Choices: any of ['all', 'last', 'last_expr', 'none', 'last_expr_or_assign']
Default: 'last_expr'
这可能并非在所有情况下都有效,例如元组分配、解包等,如果您遇到这些情况,请随时打开错误报告。
我还要警告您,IPython 中的内部工作方式非常棘手,因此可能会产生意想不到的后果。