为什么我不能在iPython中为名称`_i`分配值?

时间:2017-10-23 20:55:57

标签: python ipython

如果我这样做:

_j = 1

print(_j)
1

这是预期的

但如果我:

_i = 1

print(_i)
_i = 1

完全不是我的预期。为什么_i特殊,哪些其他名称具有此属性,我无法覆盖它?

2 个答案:

答案 0 :(得分:8)

您正在使用IPython,_i具有与IPython相关的特殊含义。在更普遍的Python中,你可以做这样的任务。

在IPython中:

In [1]: _i = 1
In [2]: _i
Out[2]: '_i = 1'

在标准Python REPL中:

>>> _i = 1
>>> _i
1

此处提供更多信息:https://ipython.org/ipython-doc/3/interactive/reference.html#input-caching-system

答案 1 :(得分:3)

你在使用ipython吗?在ipython中_i表示你以前的命令。