【推荐收藏】Python 常见报错以及解决方案
admin
2024-03-27 20:50:04
0

使用 python 难免会出现各种各样的报错,以下是Python常见的报错以及解决方法

文章目录

    • 1、AttribteError: ‘module’ object has no attribute xxx’
    • 2、AttributeError: ‘Obj’ object has no attribute ‘attr’
    • 3、FileExistsError: \[Errmo 17\] File exists
    • 技术提升
    • 4、IndentationError: expected an indented block
    • 5、IndentationError: unexpected indent
    • 6、IndentationError: unindent does not match any outer indentation level
    • 7、IndexError: list index out of range
    • 8、IndexError: string index out of range
    • 9、sADirectoryError: \[Ermo 21\] Is a directory
    • 10、KeyError: ‘age’
    • 11、ModuleNotFoundError: No module named’ pymysql ’
    • 12、NameError:name test’ is not defined
    • 13、RecursionEror:maximum rcusion depth exceded in comprison
    • 14、SyntaxError: invalid syntax
    • 15、Syntax Error: non-default argument follows default argument
    • 16、SyntaxError : invalid character in identifier
    • 17、TimeouEror \[WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败
    • 18、TypeError: can only concatenate str (not “XXX”) to str
    • 19、TypeError: ‘tuple’ object does not support item assignment
    • 20、ValueError: could not convert string to float:‘12.2月’
    • 21、ValueError: invalid literal for int() with base 10
    • 22、ValueError: substring not found
    • 23、ZeroDivisionError: division by zero

1、AttribteError: ‘module’ object has no attribute xxx’

描述:模块没有相关属性。可能出现的原因:
1.命名.py文件时,使用了Python保留字或者与模块名等相同。
解决:修改文件名
2…pyc文件中缓存了没有更新的代码。
解决:删除该库的.pyc 文件

2、AttributeError: ‘Obj’ object has no attribute ‘attr’

描述:对象没有相关属性。可能出现的原因:
1.Python内置对象没有属性。
解决:去除相关访问
2.Python自定义对象没有设置属性。
解决:在自定义对象中添加属性
3.通过类名访问实例属性。
解决:修改为通过实例名访问

3、FileExistsError: [Errmo 17] File exists

描述:文件已经存在。
解决:先判断文件是否存在,如果已经存在,则不再重新创建

FileNotFoundError: [Ermo 2] No such file or directory
描述:请求的文件或目录不存在。
解决:检查文件或目录的路径是否正确

技术提升

本文由技术群粉丝分享,项目源码、数据、技术交流提升,均可加交流群获取,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

方式①、添加微信号:dkl88191,备注:来自CSDN +研究方向
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

4、IndentationError: expected an indented block

描述:期望一个缩进块。可能出现的原因:
1.定义函数或者类下的结构体时没有缩进。
解决:添加缩进
2.if或者for或者while语句下的结构体没有缩进。
解决:添加缩进

5、IndentationError: unexpected indent

描述:缩进错误。可能出现的原因:
代码 前面出现除缩进以外的空格。
解决:删除多余的空格

6、IndentationError: unindent does not match any outer indentation level

描述:占位问题。可能出现的原因:
1.同一级的代码块采用不同的缩进规则( 代码没对齐)。
解决:用键对齐
2.存在非法字符或其他格式的不可见的内容。
解决:去除非法字符

7、IndexError: list index out of range

描述:列表下标越界,可能出现的原因
1.获取元素时指定的索引值超过列表长度。
解决:修改索引值
2.列表为空,获取元素时会出错。
解决:判断不为空再获取

8、IndexError: string index out of range

描述:字符串下标越界,可能出现的原因
1.进行字符串截取时,指定的索引不存在。
解决:修改索引值
2.根据索引获取字符串中的某个字符时,指定的索引不存在。
解决:修改索引值或者先进行判断

9、sADirectoryError: [Ermo 21] Is a directory

描述:想要操作文件,但提供的是一个目录错误。可能出现的原因:
1.把目录当作文件操作,例如,test 是一个目录,使用os.remove(test)时会引发错误。
解决:添加对应的文件名
2.忘记写文件的扩展名。
解决:将文件名补充完整
ITypeError: _ init _()takes 0 positional arguments but 1 was given
描述:位置参数个数不正确。可能出现的原因:
没有为_- init__() 方法添加self参数。
解决:添加self参数

10、KeyError: ‘age’

描述:键错误。可能出现的原因:
1.根据键获取字典的值时,指定的键不存在。
解决:修改为已有键
2.删除一个不存在的键。
解决:在删除前先判断是否存在

11、ModuleNotFoundError: No module named’ pymysql ’

描述:模块不存在,可能出现的原因:
1.模块名称拼写错误。
解决:修改正确
2.没有引入模块。
解决:使用import语句导入模块
3.没有下载第三方模块。
解决:使用pip安装所需模块

12、NameError:name test’ is not defined

描述:某个局部或全局变量名称未找到。可能出现的原因:
1.变量没有定义。
解决:定义变量
2.Python3版本不支持某些Python2中的函数或方法,如xrange()。
解决:修改为Python3中的函数或方法

13、RecursionEror:maximum rcusion depth exceded in comprison

描述:超过最大递归深度
解决:禁止无限递归,设置递归深度
SyntaxError: EOL whilescanning string literal
描述:字符串的引号没有成对出现。可能出现的情况:
1.忘记写结束的引号。
解决:加上缺少的引号
2.在字符串的结尾处包括\。
解决:将\替换为\或/
3. 引号嵌套错误。
解决:建议采用外层单引号,内层双引号

14、SyntaxError: invalid syntax

描述:无效的语法。可能出现的原因:
1.在if、while、 for等语句后面忘记写冒号,或者冒号写作分号等其他符号。
解决:修改为英文半角的冒号
2.函数或方法的小括号写成了<>
解决:将其修改为英文半角的()
3.条件表达式中出现一个等号=。
解决:将其修改为比较运算符==
4.定义没有参数的函数时没有加小括号。
解决:添加小括号

15、Syntax Error: non-default argument follows default argument

描述:参数定义顺序错误。可能出现的情况:
默认值参数没有放置在所有参数的最后。
解决:更改参数顺序

16、SyntaxError : invalid character in identifier

描述:标识符中出现无效字符。可能出现的原因:
1.函数或方法的小括号为中文状态下输入的。
解决:修改为英文半角状态下输入
2.字符串定界符使用了中文引号。
解决:修改为英文半角状态下输入
3.代码行内包括全角空格。
解决:去除或者修改为半角空格

17、TimeouEror [WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败

描述:连接超时。可能出现的原因:
1.数据库连接超时。
解决: 检查数据库连接配置信息是否正确
2. 请求URL超时。
解决:检查URL是否正确以及能否正常访问
3.连接FTP服务超时。
解决:检查连接FTP的参数是否正确

18、TypeError: can only concatenate str (not “XXX”) to str

描述:只能进行字符串与字符串的连接。可能出现的原因:
将字符串与非字符串类型(如整型、浮点型、布尔型、序列对象等)的数据使用+进行连接。
解决:使用str()函数转换后再连接

TypeError: f() takes exactly 2 arguments (1 given)
描述:为函数提供的参数个数不够。可能出现的情况:
定义两个参数,调用时只传递一一个。
解决:将参数补充完整

19、TypeError: ‘tuple’ object does not support item assignment

描述:不能修改元组元素。可能出现的原因:
通过索引获取元组元素并修改。
解决:将元组修改为列表或者删除修改操作

20、ValueError: could not convert string to float:‘12.2月’

描述:无法将字符串转换为浮点数。可能出现的原因:
float()函数接受了非浮点数的字符串类型数据。
解决:修改为浮点数字符串

21、ValueError: invalid literal for int() with base 10

描述:传入无效的参数。可能出现原因:
1.int()函数接受了非数字的字符串类型数据。
解决:将非数字的字符串修改为数字字符串
2.将浮点类型的字符串数字转换为整型。
解决:先转换为浮点型再转换为整型

22、ValueError: substring not found

描述:未找到子字符串。可能出现的原因:
使用index()或者rindex()方法检索字符串时,指定的字符串不存在。
解决:在检索前先判断

23、ZeroDivisionError: division by zero

描述: 0不能作为被除数。可能出现的原因:
进行除法、取整除、求余运算时,0作为除数。
解决:修改为非0数字

以上就是python常见报错以及解决方案,如果有其他的报错可以在评论区留言,我会更新上去,欢迎各位大佬来访~

相关内容

热门资讯

怎么解除订阅安卓系统,安卓系统... 你是不是也和我一样,手机里订阅了好多服务,结果现在想解除订阅,却一头雾水?别急,今天就来手把手教你如...
安卓系统停用怎么开启,轻松恢复... 亲爱的手机控们,你是否曾经遇到过安卓系统突然停用的情况,让你手忙脚乱,不知所措?别担心,今天就来教你...
安卓系统电池健康度,电池健康度... 你有没有发现,你的安卓手机最近是不是有点儿不给力了?电池续航能力大不如前,充电速度也慢了不少?别急,...
安卓系统按键怎么截图,安卓系统... 你是不是也和我一样,有时候想截个图分享给朋友,却发现安卓手机的截图功能有点神秘呢?别急,今天就来手把...
购票系统安卓源代码,架构设计与... 你有没有想过,那些我们每天离不开的购票系统,它们背后的秘密是什么呢?今天,就让我带你一探究竟,揭开购...
安卓手机系统后台测试,深度解析... 你有没有发现,你的安卓手机后台总是悄悄地忙碌着?别小看了这些后台程序,它们可是手机系统稳定运行的关键...
安卓系统重启的图标,解锁设备新... 手机突然重启,是不是心里有点慌?别急,今天就来和你聊聊安卓系统重启的图标,让你一眼就能认出它,再也不...
车载智慧屏安卓系统,智能出行新... 你有没有发现,现在的车载智慧屏越来越智能了?尤其是那些搭载了安卓系统的,简直就像是个移动的小电脑,不...
安卓系统连上网权限,解锁设备无... 你有没有发现,你的安卓手机里有些应用总是偷偷连上网?别小看这个小小的网络权限,它可是能影响你隐私、消...
安卓谷歌操作系统,探索安卓谷歌... 你知道吗?在智能手机的世界里,有一个操作系统可是无人不知、无人不晓,那就是安卓谷歌操作系统。它就像一...
安卓系统手写%怎样调出,具体实... 你有没有遇到过这种情况:在使用安卓手机的时候,突然想用手写输入法来记录一些灵感或者重要信息,可是怎么...
安卓手机重置 系统设置,轻松恢... 手机用久了是不是感觉卡顿得厉害?别急,今天就来教你怎么给安卓手机来个大变身——重置系统设置!想象你的...
win如何安装安卓系统,Win... 哇,你有没有想过,让你的Win系统也能玩转安卓应用?没错,就是那种在手机上轻松自如的安卓系统,现在也...
苹果qq和安卓系统,跨平台体验... 你有没有发现,现在手机市场上,苹果和安卓的较量可是越来越激烈了呢!咱们就来聊聊这个话题,看看苹果QQ...
显示最好的安卓系统,探索最新旗... 你有没有想过,为什么安卓系统那么受欢迎呢?它就像一个魔法盒子,里面装满了各种神奇的魔法。今天,就让我...
安卓app怎么降级系统,系统版... 你有没有发现,有时候安卓手机的系统更新后,新功能虽然炫酷,但老系统用起来更顺手呢?别急,今天就来教你...
雷军脱离安卓系统,引领科技变革... 你知道吗?最近科技圈可是炸开了锅,因为我们的雷军大大竟然宣布要脱离安卓系统,这可真是让人大跌眼镜啊!...
安卓系统自动开网络,安卓系统自... 你有没有发现,手机里的安卓系统有时候会自动开启网络连接,这可真是让人又爱又恨啊!有时候,你正专心致志...
安卓系统怎样控制后台,因为服务... 手机里的安卓系统是不是感觉越来越卡了?后台程序太多,不仅耗电还影响性能。别急,今天就来教你怎么巧妙地...
安卓系统打游戏推荐,一触即达! 你有没有发现,现在手机游戏越来越好玩了?不管是休闲小游戏还是大型MMORPG,都能在手机上畅玩。但是...