Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 内置函数不适用于Spyder_Python_Python 3.x_Function_Error Handling_Spyder - Fatal编程技术网

Python 内置函数不适用于Spyder

Python 内置函数不适用于Spyder,python,python-3.x,function,error-handling,spyder,Python,Python 3.x,Function,Error Handling,Spyder,我试图在Python 3,6中使用max函数: print('Maximum is:', max(1, 3, 2, 5, 4)) 结果是 File "E:/ProgramyRobione/untitled1.py", line 2, in <module> print('Maximum is:', max(1, 3, 2, 5, 4)) TypeError: 'int' object is not callable 文件“E:/ProgramyRobione/unt

我试图在Python 3,6中使用max函数:

print('Maximum is:', max(1, 3, 2, 5, 4))
结果是

  File "E:/ProgramyRobione/untitled1.py", line 2, in <module>
    print('Maximum is:', max(1, 3, 2, 5, 4))

TypeError: 'int' object is not callable
文件“E:/ProgramyRobione/untitled1.py”,第2行,在
打印('最大值为:',最大值(1,3,2,5,4))
TypeError:“int”对象不可调用

我使用的是Spyder,代码应该只使用这一行。

这是Spyder附带的iPython头像。当我从SO复制/粘贴随机代码位进行测试,几天后才发现真正奇怪的行为时,我就犯了这个错误——iPython控制台中定义的变量也将无限期地位于脚本的全局命名空间中

你可以做两件事:

  • 内核的硬重启(
    ctrl
    +
  • 跟进功能请求线程,现在可以在每次运行脚本时自动清除名称空间

  • 显然,您已将
    max=
    分配到某个地方;不要那样做。@dkato实际上他们没有-。另外,描述一下你实际在做什么也很有帮助——“传递一个数字列表或元组”,将语法与OP可以搜索的东西联系起来。它是一个内置的,但你有一些不需要的东西——你能显示代码的第一行吗?它不一定是一个外来的Python解释器。如果您在Spyder的iPython控制台中定义了
    max=some_int
    ,然后尝试运行脚本(因为存在全局名称空间),那么这实际上非常容易重新创建。如果您使用的IDE支持此功能,请尝试重新启动控制台(通常为ctrl+)@dkato btw-您可以删除自己的注释。。。只需将鼠标悬停在它们上面,你就会看到一个
    (x)
    (x),在它的末尾-单击它,它就消失了-无需编辑它就可以说它被删除了:)(Spyder maintainer在这里)执行前删除所有变量的功能已经在Spyder中实现,因为它的版本是3.1。@CarlosCordoba我在12月1日之后在这台笔记本电脑上下载的(我不知道确切的日期,但肯定是在那之后,因为在此之前我一直在国外)默认情况下存在名称空间干扰。我承认我的回答中的功能,但我肯定可以轻松地重新创建OP的问题。脚本-->控制台访问非常棒,但我从控制台-->脚本中只遇到了麻烦。@CarlosCordoba我应该承认,我也认为Spyder非常棒,它是我选择的IDE,但有它在过去,默认情况下打开的会给我带来一些真正的调试问题。也许是我,但我没有想到它会在默认情况下污染我脚本的名称空间。@roganjosh,有三件事:1.默认情况下清除名称空间是正确的,但现在可以打开该选项了;2.我们还提供了一个h在其专用控制台中运行每个文件。在这种模式下,每次重新运行文件时都会清理名称空间,您可以在
    Run>Configuration per file
    Preferences>Run
    中激活该名称空间,以使其全局化;3.在控制台中保留以前的计算结果并污染您的名称空间可能不直观“我对他们很感兴趣,但是来自Matlab的人对它非常习惯。”@CarlosCordoba。那太棒了。我会尽快试用更新的版本。