Python中的Python设置函数 - 奇怪的行为

时间:2014-02-23 03:28:21

标签: python emacs

我使用emacs(GNU Emacs 24.3.1(i386-mingw-nt6.1.7601))作为文本编辑器和python接口。到目前为止,使用我正在处理的脚本做我想做的所有事情都相当简单,但我只是使用set函数遇到了一个奇怪的结果。

python docs为set函数提供了以下示例:

>>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> fruit = set(basket)               # create a set without duplicates
>>> fruit
set(['orange', 'pear', 'apple', 'banana'])

但是,当我在emacs中运行这些命令时,我收到以下错误:

>>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> fruit = set(basket)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'list' object is not callable

任何人都可以向我解释为什么会发生这种情况以及我应该采取哪些措施来恢复命令的功能?此外,还有其他功能也会像往常一样无法正常工作吗?

感谢。

1 个答案:

答案 0 :(得分:3)

您将变量set命名为隐藏内置函数。不要这么说。如果要恢复内置,请重新启动解释器或使用

del set

取消分配您所做的变量。