python中常见错误及解决方法


Posted in Python onJune 21, 2020

python常见的错误有

1.NameError变量名错误

2.IndentationError代码缩进错误

3.AttributeError对象属性错误

详细讲解

1.NameError变量名错误

报错:

>>> print a<br>Traceback (most recent call last):<br>File "<stdin>", line 1, in <module><br>NameError: name 'a' is not defined<br>

解决方案:

先要给a赋值。才能使用它。在实际编写代码过程中,报NameError错误时,查看该变量是否赋值,或者是否有大小写不一致错误,或者说不小心将变量名写错了。

注:在Python中,无需显示变量声明语句,变量在第一次被赋值时自动声明。

>>> a=1<br>>>> print a<br>1<br>

2.IndentationError代码缩进错误

代码

a=1b=2<br>if a<b:<br>print a<br>

报错:

IndentationError: expected an indented block<br>

原因:

缩进有误,python的缩进非常严格,行首多个空格,少个空格都会报错。这是新手常犯的一个错误,由于不熟悉python编码规则。像def,class,if,for,while等代码块都需要缩进。

缩进为四个空格宽度,需要说明一点,不同的文本编辑器中制表符(tab键)代表的空格宽度不一,如果代码需要跨平台或跨编辑器读写,建议不要使用制表符。

解决方案

a=1b=2<br>if a<b:<br>  print a<br>

3.AttributeError对象属性错误

报错:

>>> import sys<br>>>> sys.Path<br>Traceback (most recent call last):<br>File "<stdin>", line 1, in <module><br>AttributeError: 'module' object has no attribute 'Path'<br>

原因:

sys模块没有Path属性。

python对大小写敏感,Path和path代表不同的变量。将Path改为path即可。

>>> sys.path<br>['', '/usr/lib/python2.6/site-packages']<br>

初学者遇到的错误实例:

使用错误的缩进

Python用缩进区分代码块,常见的错误用法:

print('Hello!')
print('Howdy!')

导致:IndentationError: unexpected indent。同一个代码块中的每行代码都必须保持一致的缩进量

if spam == 42:
print('Hello!')
print('Howdy!')

导致:IndentationError: unindent does not match any outer indentation level。代码块结束之后缩进恢复到原来的位置

if spam == 42:
print('Hello!')

导致:IndentationError: expected an indented block,“:” 后面要使用缩进

变量没有定义

if spam == 42:
print('Hello!')

导致:NameError: name 'spam' is not defined

获取列表元素索引位置忘记调用 len 方法

通过索引位置获取元素的时候,忘记使用 len 函数获取列表的长度。

spam = ['cat', 'dog', 'mouse']
for i in range(spam):
print(spam[i])

导致:TypeError: range() integer end argument expected, got list. 正确的做法是:

spam = ['cat', 'dog', 'mouse']
for i in range(len(spam)):
print(spam[i])

当然,更 Pythonic 的写法是用 enumerate

spam = ['cat', 'dog', 'mouse']
for i, item in enumerate(spam):
print(i, item)

函数中局部变量赋值前被使用

someVar = 42
def myFunction():
print(someVar)
someVar = 100
myFunction()

导致:UnboundLocalError: local variable 'someVar' referenced before assignment

当函数中有一个与全局作用域中同名的变量时,它会按照 LEGB 的顺序查找该变量,如果在函数内部的局部作用域中也定义了一个同名的变量,那么就不再到外部作用域查找了。因此,在 myFunction 函数中 someVar 被定义了,所以 print(someVar) 就不再外面查找了,但是 print 的时候该变量还没赋值,所以出现了 UnboundLocalError

以上就是python中常见错误及解决方法的详细内容,更多关于python常见错误有哪些的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
再谈Python中的字符串与字符编码(推荐)
Dec 14 Python
Python爬虫之模拟知乎登录的方法教程
May 25 Python
python方向键控制上下左右代码
Jan 20 Python
解决Python 爬虫URL中存在中文或特殊符号无法请求的问题
May 11 Python
使用python的pandas库读取csv文件保存至mysql数据库
Aug 20 Python
Python读取txt内容写入xls格式excel中的方法
Oct 11 Python
Python基础之条件控制操作示例【if语句】
Mar 23 Python
浅析Python 中几种字符串格式化方法及其比较
Jul 02 Python
Python装饰器使用你可能不知道的几种姿势
Oct 25 Python
python 通过邮件控制实现远程控制电脑操作
Mar 16 Python
Pytorch环境搭建与基本语法
Jun 03 Python
pytorch实现线性回归以及多元回归
Apr 11 Python
python安装后的目录在哪里
Jun 21 #Python
浅谈Python 函数式编程
Jun 20 #Python
音频处理 windows10下python三方库librosa安装教程
Jun 20 #Python
深入浅析python 中的self和cls的区别
Jun 20 #Python
浅谈Python 参数与变量
Jun 20 #Python
python字符串的index和find的区别详解
Jun 20 #Python
Django Admin 上传文件到七牛云的示例代码
Jun 20 #Python
You might like
php实现基于PDO的预处理示例
2017/03/28 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
2016/11/25 Javascript
jquery中用函数来设置css样式
2016/12/22 Javascript
JavaScript使用原型和原型链实现对象继承的方法详解
2017/04/05 Javascript
js 客户端打印html 并且去掉页眉、页脚的实例
2017/11/03 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
2017/12/19 Javascript
JS逻辑运算符短路操作实例分析
2018/07/09 Javascript
Element DateTimePicker日期时间选择器的使用示例
2020/07/27 Javascript
[00:14]PWL:老朋友Mushi拍VLOG与中国玩家问好
2020/11/04 DOTA
[01:38:19]夜魇凡尔赛茶话会 第五期
2021/03/11 DOTA
python网络编程之文件下载实例分析
2015/05/20 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
Tensorflow 多线程与多进程数据加载实例
2020/02/05 Python
Django User 模块之 AbstractUser 扩展详解
2020/03/11 Python
pyinstaller打包找不到文件的问题解决
2020/04/15 Python
python输入中文的实例方法
2020/09/14 Python
python 制作简单的音乐播放器
2020/11/25 Python
python判断all函数输出结果是否为true的方法
2020/12/03 Python
python 写一个水果忍者游戏
2021/01/13 Python
python元组拆包实现方法
2021/02/28 Python
浅析与CSS3的loading动画加载相关的transition优化
2015/05/18 HTML / CSS
美国最大网上鞋店:Zappos
2016/07/25 全球购物
Melijoe美国官网:法国奢侈童装购物网站
2017/04/19 全球购物
大学教师年终总结的自我评价
2013/10/29 职场文书
《我的伯父鲁迅先生》教学反思
2014/02/12 职场文书
二年级班级文化建设方案
2014/05/10 职场文书
工作求职信
2014/07/04 职场文书
暑假学习心得体会
2014/09/02 职场文书
党员干部作风建设思想汇报范文
2014/10/25 职场文书
大学生见习报告范文
2014/11/03 职场文书
销售工作决心书
2015/02/04 职场文书
审查起诉阶段律师意见书
2015/05/19 职场文书
驻村工作简报
2015/07/20 职场文书
丧事答谢词大全
2015/09/30 职场文书