Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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
类型错误:';int';对象不可调用python 2.7_Python_Python 2.7 - Fatal编程技术网

类型错误:';int';对象不可调用python 2.7

类型错误:';int';对象不可调用python 2.7,python,python-2.7,Python,Python 2.7,我知道这个问题以前被问过很多次,但我似乎在我的代码中找不到将列表a绑定到整数值的地方。我已经更改了所有变量名,但没有用 以下是我正在运行的全部代码: import sys def powerset(a): # returns a list of all subsets of the list a if (len(a) == 0): return [[]] else: allSubsets = [ ] for subset in powerset(a[1:]):

我知道这个问题以前被问过很多次,但我似乎在我的代码中找不到将列表a绑定到整数值的地方。我已经更改了所有变量名,但没有用

以下是我正在运行的全部代码:

import sys
def powerset(a):
# returns a list of all subsets of the list a
if (len(a) == 0):
    return [[]]
else:
    allSubsets = [ ]
    for subset in powerset(a[1:]):
        allSubsets += [subset]
        allSubsets += [[a[0]] + subset]
    return allSubsets

if __name__ == '__main__':
  no_test = int(sys.stdin.readline())
  for i in xrange(no_test):
    xor_res = 0
    len = int(sys.stdin.readline())
    numbers_array = map(int,sys.stdin.readline().split())
    numbers = []
    for i in numbers_array:
        numbers.append(i)
    maxset = powerset(numbers)
    for set in maxset:
        if len(set) != 0:
            temp = 0
            for i in set:
                temp = temp^i
        xor_res = xor_res ^ temp
    print xor_res
这就是我得到的错误:

Traceback (most recent call last):File "solution.py", line 24, in <module>maxset = powerset(numbers)File "solution.py", line 6, in powerset  if (len(a) == 0):TypeError: 'int' object is not callable
Traceback(上次调用):文件“solution.py”,第24行,在maxset=powerset(numbers)文件“solution.py”,第6行,在powerset if(len(a)==0):TypeError:“int”对象不可调用
有人能告诉我这里出了什么问题吗?
谢谢

您已经创建了一个名为
len
的变量,它对内置函数
len()
进行阴影处理:

当您尝试在整个代码中调用
len
函数时,解释器会首先找到
len
变量,并尝试像调用函数一样调用它。由于它是一个
int
,因此无法执行此操作,我们看到了错误


要解决您的问题,请调用不同的变量。一般来说,避免创建名为“len”、“list”、“map”等的变量,因为使用这些名称会隐藏内置的变量。

您已经创建了一个名为
len
的变量,该变量会隐藏内置函数
len()

当您尝试在整个代码中调用
len
函数时,解释器会首先找到
len
变量,并尝试像调用函数一样调用它。由于它是一个
int
,因此无法执行此操作,我们看到了错误


要解决您的问题,请调用不同的变量。一般来说,避免使用“len”、“list”、“map”等名称创建变量,因为使用这些名称会隐藏内置名称。

哦,我明白了,这很有意义。非常感谢@蝙蝠侠如果这个答案解决了你的问题,你可以点击投票计数器下的复选标记将其标记为接受。我非常感激。哦,我明白了,这很有道理。非常感谢@蝙蝠侠如果这个答案解决了你的问题,你可以点击投票计数器下的复选标记将其标记为接受。我将非常感激。
len = int(sys.stdin.readline())