"TypeError: 'set' object is not callable"
"TypeError: 'set' object is not callable"
我有两个 iPython 笔记本安装。一个在 AWS 微型实例上,第二个在我的 Macbook 上使用 Anaconda (OS X Yosemite)。
我遇到了他们处理以下代码的方式不同:
my_list = [1, 2, 3, 0, 5, 10, 11, 1, 5]
your_list = [1, 2, 3, 0, 12, 13]
my_set = set(my_list)
your_set = set(your_list)
print my_set
print len(my_set)
print len(my_list)
在 iPython-AWS 上,我的输出是:
set([0, 1, 2, 3, 5, 10, 11])
7
9
在 iPython-Macbook 上,我的输出是:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-29-cd060f1b0bde> in <module>()
1 my_list = [1, 2, 3, 0, 5, 10, 11, 1, 5]
2 your_list = [1, 2, 3, 0, 12, 13]
----> 3 my_set = set(my_list)
4 your_set = set(your_list)
5 print my_set
TypeError: 'set' object is not callable
此外,这些是安装详细信息(如果相关):
1. iPython 在 AWS 微型实例上:http://i.stack.imgur.com/qYrq8.png
- iPython Macbook 上的笔记本 - http://i.stack.imgur.com/Q6Id5.png
我似乎找不到造成这种差异的原因,尽管我确实在 Whosebug 上遇到过许多关于 "TypeError: 'set' object is not callable" 问题的讨论帖。
如果能帮助我理解为什么会这样,我将不胜感激,如果我能做些什么来确保我的代码在两个安装上运行。
此错误表明您可能定义了一个变量名为 set
的集合,如果您这样做,将覆盖 built-in
函数 set
.
发生此问题的示例 -
>>> set = set([1,2,3,4,5])
>>> my_set = set([2,3,4,5,6])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'set' object is not callable
您可以在顶部菜单中重新启动内核。
内核->重启
只需删除您分配的任何预定义变量,可能是有意或无意的,错误就会消失。
我错误地 placed = sign
在打印语句和括号之间 print=(A|B);
因为它正在发生。
清除打印变量后就没问题了。
写:
my_set = set
my_set.update(my_list)
不要使用括号。
[已修复]
类型错误:'set'对象不可调用
我们知道集合是 'built-in function'
您只需在分配任何变量和 运行 程序之前添加 (del set)
P.S : 稍后您可以删除它。
示例:
tuple_data = {'A','B',1, 2, 'B','A'}
#del set
var_1 = set(tuple_data)
print(var_1)
type(var_1)
输出:
{1, 2, 'B', 'A'}
set
我有两个 iPython 笔记本安装。一个在 AWS 微型实例上,第二个在我的 Macbook 上使用 Anaconda (OS X Yosemite)。 我遇到了他们处理以下代码的方式不同:
my_list = [1, 2, 3, 0, 5, 10, 11, 1, 5]
your_list = [1, 2, 3, 0, 12, 13]
my_set = set(my_list)
your_set = set(your_list)
print my_set
print len(my_set)
print len(my_list)
在 iPython-AWS 上,我的输出是:
set([0, 1, 2, 3, 5, 10, 11])
7
9
在 iPython-Macbook 上,我的输出是:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-29-cd060f1b0bde> in <module>()
1 my_list = [1, 2, 3, 0, 5, 10, 11, 1, 5]
2 your_list = [1, 2, 3, 0, 12, 13]
----> 3 my_set = set(my_list)
4 your_set = set(your_list)
5 print my_set
TypeError: 'set' object is not callable
此外,这些是安装详细信息(如果相关): 1. iPython 在 AWS 微型实例上:http://i.stack.imgur.com/qYrq8.png
- iPython Macbook 上的笔记本 - http://i.stack.imgur.com/Q6Id5.png
我似乎找不到造成这种差异的原因,尽管我确实在 Whosebug 上遇到过许多关于 "TypeError: 'set' object is not callable" 问题的讨论帖。 如果能帮助我理解为什么会这样,我将不胜感激,如果我能做些什么来确保我的代码在两个安装上运行。
此错误表明您可能定义了一个变量名为 set
的集合,如果您这样做,将覆盖 built-in
函数 set
.
发生此问题的示例 -
>>> set = set([1,2,3,4,5])
>>> my_set = set([2,3,4,5,6])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'set' object is not callable
您可以在顶部菜单中重新启动内核。 内核->重启
只需删除您分配的任何预定义变量,可能是有意或无意的,错误就会消失。
我错误地 placed = sign
在打印语句和括号之间 print=(A|B);
因为它正在发生。
清除打印变量后就没问题了。
写:
my_set = set
my_set.update(my_list)
不要使用括号。
[已修复]
类型错误:'set'对象不可调用
我们知道集合是 'built-in function'
您只需在分配任何变量和 运行 程序之前添加 (del set)
P.S : 稍后您可以删除它。
示例:
tuple_data = {'A','B',1, 2, 'B','A'}
#del set
var_1 = set(tuple_data)
print(var_1)
type(var_1)
输出:
{1, 2, 'B', 'A'}
set