哈喽,大家好呀
我又来啦,今天让我们来看看python中有哪些常见的异常报错吧
说到python中的报错,我们总是脑壳疼
现在我们要学会去认识报错的类型
这样子,在我们出现报错的时候就可以知道报错的原因是什么啦~(https://jq.qq.com/?_wv=1027&k=RFkfeU8j)
1.SyntaxError
SyntaxError 语法错误
大家在写代码时最容易忽略的小细节,稍稍的不注
意,一个异常报错就朝你奔来,让你们看看我那会儿出现的报错,看看大家有没有经历过这个报错
SyntaxError: EOL while scanning string literal
啊这,真的是太粗心了,
这个错误是因为我的语法中缺少了另一个引号,
在python中语句的格式不对,
引号、圆括号没有成对出现,
比如少写了分号、引号、少写或多写了括号、
写错了关键字、中英文字符混搭等就会出现报错,
最常见的就是中英文字符混搭,
在敲代码会切换中英文输入法,
有时候会忘记键英文已经切换到中文了,
特别是在字符号,
容易出现错误而且不明显,
python对语法格式很敏感,
一定要牢记语法格式,
基础语法格式要多背多敲多练啊。
2.ModuleNotFoundError
ModuleNotFoundError 模块未找到,
大家在导入模块时,没有任何的问题,
但是在运行代码或者项目时,哦豁,报错它就来了(痛苦ing),像这样子的报错我也是经历了无数次,在无数次的经验中我终于找到了解决这个问题的解决方法,来看看报错提示吧
ModuleNotFoundError: No module named ‘progress’
这个报错提示显示没有这个模块progress,那会儿我去百度搜索了一下,是因为我没有
pip install,于是乎我就安装了这个模块,果然报错就离我远去了(太棒啦),但是呢,
这只是一种解决方法,
但是还有一种就是安装了却依然提示没有找到该模块,
那是因为是因为调用的模块与被调用的模块路径配置不一样,
或者某个py文件名与该调用的模块名称一致,产生命名冲突。
那解决方法就是将模块的配置路径放在同一个路径下,
命名冲突就将重复的py文件名修改就可以啦
3.NameError
NameError 变量名错误
NameError: name ‘download’ is not defined
这个报错提示是该变量名没有被定义,
这个错误啊,
在敲代码的时候也会经常碰见啊(真是让人脑壳疼),
我也是被这个报错摧残了无数啊,
终于让我,找到了让它离我远去的方法。
刚刚遇到的没有被定义的报错,最常见的解决方法是定义变量名就可以啦,
但是有一种是已经定义了,
却还是提示错误没有被定义,
这个报错是因为python版本的问题,
不兼容,
这个的解决方法是要熟悉python变量名的详细规则哦。
4.AttributeError
AttributeError 属性错误
AttributeError: ‘list’ object has no attribute ‘testVec’
这个报错是list没有这个属性,这个报错是因为把‘,’打成了‘.’,我们都知道‘.’是要在class里定义才能有性质,自己凭空写是没有用的哦
5.ValueError
ValueError 参数错误
ValueError: invalid literal for int() with base 10: ‘abc’
当函数接收正确类型但值不合适的参数时,将引发Python ValueError。就 上面这个报错问题int(‘abc’), int函数可以接受字符串类型,但是’abc’字符串不具备表示一个整数的含义。
详细报错就到这里啦
下面也是经常遇到的报错问题,大家要记住呀
TypeError 类型错误
IndexError 索引错误
KeyError 键错误
ImportError 导入模块/对象失败
FileNotFoundError 文件错误
如果有什么补充和错误可以再下面评论呀,我都会认认真真去看的哦~