如果我输入/在iPython中,为什么我会得到空元组?

时间:2015-02-16 12:07:41

标签: ipython

打开iPython并输入:

/

点击进入并想知道结果:

()

你无法分配它,我猜它与shell功能有关。

编辑:

您可以使用以下内容进行分配:

 p = Out[xx]

但不是直接:

 p = / 

会给:

SyntaxError

这确实是一个空元组。

1 个答案:

答案 0 :(得分:7)

这是可调用对象/名称的便利功能。它不是一个空元组,而是括号完成。来自iPython的帮助系统(?):

  
      
  • 自动括号和自动引用(改编自Nathan Gray的LazyPython)

         
        
    1. 自动括号

           

      可以调用可调用对象(即函数,方法等)   这(注意参数之间的逗号)::

           

      在[1]中:callable_ob arg1,arg2,arg3

           

      并且输入将被翻译为此::

           

      callable_ob(arg1,arg2,arg3)

           

      默认情况下,此功能处于关闭状态(在极少数情况下,它可以生成   不良副作用),但你可以在命令行激活它   通过使用--autocall 1启动IPython,将其永久设置在您的   配置文件,或在运行时使用%autocall 1打开。

           

      您可以使用'/'作为第一个字符来强制使用自动括号   一条线。例如::

           

      在[1]中:/ globals#成为'globals()'

    2.   
  •