Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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代码第一次运行良好,但第二次失败_Python_Jupyter Notebook_Jupyter - Fatal编程技术网

Python代码第一次运行良好,但第二次失败

Python代码第一次运行良好,但第二次失败,python,jupyter-notebook,jupyter,Python,Jupyter Notebook,Jupyter,我第一次从笔记本运行这段代码时,它工作正常: #Which letters and how many letters = ["a","b","c"] noOfLetters = len(letters) #Looking for all permutations resultA = [] from itertools import permutations for i in range(noOfLetters): resultA.append(list(permutations(let

我第一次从笔记本运行这段代码时,它工作正常:

#Which letters and how many
letters = ["a","b","c"]
noOfLetters = len(letters)

#Looking for all permutations
resultA = []
from itertools import permutations
for i in range(noOfLetters):
    resultA.append(list(permutations(letters,i+1)))
如果我再次运行它(不重新启动内核),我会得到以下错误:

TypeError                                 Traceback (most recent call last)
<ipython-input-5-4050a4ce7a36> in <module>()
      7 from itertools import permutations
      8 for i in range(noOfLetters):
----> 9     resultA.append(list(permutations(letters,i+1)))

TypeError: 'list' object is not callable
TypeError回溯(最近一次调用)
在()
7来自itertools导入置换
8适用于范围内的i(noOfLetters):
---->9结果追加(列表(排列(字母,i+1)))
TypeError:“列表”对象不可调用
假设“notebook”是Jupyter(以前是ipython notebook),您必须小心Jupyter保留所有变量的状态

-->这意味着第二次运行开始时,变量已经初始化为第一次运行结束时的值

避免这种情况的一种方法是重新启动内核;二是删除所有变量;还有一个是每次运行时初始化所有变量

从:

要重新启动内核(即计算引擎),请单击菜单kernel->restart。这对于从头开始计算非常有用(例如,删除变量、关闭打开的文件等)


在这段代码之后的某个时刻,您将执行
list=
。这会隐藏内置的
列表
,并导致问题。将其重命名为
lst
或其他名称。尽量不要在Hanks Adam中对内置项进行阴影处理,确实如此。@GretelDePaepe如果必须使用与内置项相同的名称,一种约定是在名称后面加下划线:例如,在本例中,
list=列表的code>。