python中的一些报错记录(持续更新)

有时候代码报错,但是一下子又想不出报错的原因,这里慢慢记录下来,以防止忘记.

这里遇到一个问题,记一个问题

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
>>> 

猜你喜欢

转载自blog.csdn.net/hjxu2016/article/details/80983793
今日推荐