有时候代码报错,但是一下子又想不出报错的原因,这里慢慢记录下来,以防止忘记.
这里遇到一个问题,记一个问题
1、‘Nonetype' object is not iterable.
中文翻译:'Nonetype'对象是不可迭代的。
出现这种情况,可能是None的值被赋值给了多个对象如:
>>> a = b = None #没有报错
>>> a, b = None #报错了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'NoneType' object is not iterable
如果是函数,需要考虑函数并没有return,但是确赋值给了对象,或者赋值给了多个对象
2、TypeError:TypeError: list indices must be integers, not tuple
中文翻译:list indices必须是整数,而不是元组
这种情况我也不知道该如何解答,答题涉及到list是不是数组这个说法,在numpy中,提出的array中的数据类型必须全部相同,而list不是必须相同,list存放的是指针,是数据的地址.具体例子如下
>>> a = [[1,2],[2,3],[3,6]]
>>> a[1][1]
3
>>> a[1,1]#报错了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not tuple
>>> b =np.array( [[1,2],[2,3],[3,6]])#而经过数组转化后,就不报错了
>>> b[1,1]
3
>>> b[1][1]
3
>>>