python小白如何看报错?实用三步法

怎么正确看报错?拿一段代码来说事:

# coding= utf-8

def rose():
    return True

#列表就是一个可迭代对象,定义一个列表
lists = [1, 2, 3, 4, 5, 6, 8, 77]

#将函数和列表传进去
a = filter(rose, lists)

print(list(a))


在代码没有运行成功的时候,python解释器就会提供一个Traceback。如图
在这里插入图片描述
Traceback会指出你在什么地方犯了什么错误及其原因

看错三步法

1.看line后面的数字,表示在哪一行犯错了,快速定位
2.看列出的这行代码,准确定位
3.报错原因:TypeError这一行就是阐释为什么错了
在这里插入图片描述
例如图中就是第12行的print(list(a))有错,原因是rose() takes 0 positional arguments but 1 was given 翻译过来是:rose()接受0个位置参数,但给出了1个,由此我就知道我在第三行定义的时候没有传参,于是更改代码def rose():def rose(n): ,问题就得到解决! 如果在不认识英文的情况下建议用百度翻译。

猜你喜欢

转载自blog.csdn.net/hanhanwanghaha/article/details/107901141
今日推荐