python缩进格式错误的是_19个常见的python错误和异常
19个常见的python错误和异常
错误总是不可避免,尤其是在初学阶段,本文收集整理了1个常见的python错误
1. 忘记添加:
在if, elif, else, for, while, class,或者使用def定义函数的名称后面忘记添加:,就会引发 SyntaxError
if 3 > 4
print('ok')
这是一种非常明显的错误,大多数编辑器在你写代码的时候就会用红色的波浪线提示你
2. 误将 = 当做 ==
a = 4
if a = 4:
print('ok')
即便是多年编程经验的老手也会偶尔犯这种错误,写的太着急了,就少打了一个=,得到的自然也是SyntaxError
3. 错误的缩进空格数量
if 1==1:
print('1')
print('2')
这段代码将引发错误“IndentationError: unindent does not match any outer indentation level” ,一次缩进是4个空格,这一点务必要牢记
4. 错误使用range函数
lst = [1, 2, 3]
for i in range(lst):
print(lst[i])
这段代码的本意是通过索引来遍历列表,但错误的使用了range函数,引发了错误“TypeError: 'list' object cannot be interpreted as an integer”, 正确的做法如下
lst = [1, 2, 3]
for i in range(len(lst)):
print(lst[i])
5. 尝试修改字符串的内容
字符串是不可变对象,无法修改字符串里的内容,下面的代码将会引发错误“TypeError: 'str' object does not support item assignment”
s = "i like python"
s[0] = 'I'
print(s[0])
6. 尝试将非字符串数据与字符串连接
print('I have ' + 3 + " books")
上面的代码尝试将字符串与int类型数据连接在一起,由于他们类型不同,会导致错误“TypeError: must be str, not int”
7. 字符串缺少引号
print('hello world)
创建字符串可以是用一对单引号,或者一对双引号,或者一对""", 上面的代码会引发错误“SyntaxError: EOL while scanning string literal”
8. 使用未定义的变量
sname = "lilei"
print('my name is ' + name)
print语句中需要用到的变量name事先并没有被定义,就会引发错误“NameError: name 'name' is not defined”
9. 调用对象没有的方法
string = 'PYTHON'
# 经过一些操作后,string变成了None
string = None
print(string.lower())
string原本是字符串,但进过一些操作后,变成了其他对象,可能是int,或者None,不论变成什么,总是它都不再是字符串,没有了lower方法,这时你再去调用lower方法就会报错“AttributeError: 'NoneType' object has no attribute 'lower'”
10. 访问不存在的索引
lst = [1, 2, 3]
print(lst[6])
列表最大的索引是2,代码里尝试访问索引6就会引发索引错误“IndexError: list index out of range”
11. 使用一个不存在的key
需要通过key来操作字典,如果key不存在,就会引发错误“KeyError”
dic = {
'name': 'lili',
'age': 14
}
print(dic['sex'])
12. 使用保留字做变量
class = 'python'
print(class)
python的保留字不能作为变量,上面的代码会引发错误“SyntaxError”
13. 使用不存在的内置函数
lst = [1, 2, 3]
print(avg(lst))
这个错误与第8个错误相似,都是使用了一个不存在的对象
14. 在函数内修改全局不可变对象
这是一个比较复杂的错误,先来看下面的代码
a = 10
def func():
print(a)
func()
程序正常执行,可以输出10,对代码稍作修改
a = 10
def func():
print(a)
a = 20
func()
多了一行a = 20后,再次运行代码就会报错“UnboundLocalError: local variable 'a' referenced before assignment”,为什么会这样呢?a原本是一个全局变量,在第一段代码里可以正常访问,但是第二段代码里尝试对变量a进行修改,一旦有了修改这个动作,解释器就认为变量a是一个局部变量,而不在是全局变量。那么在a = 20这条语句之前尝试输出a的内容就会报错因为在执行print(a)时,局部变量a还不存在。
15. 修改range的返回值
lst = range(10)
lst[0] = 20
print(lst)
range函数创建一个整数序列,但这个序列并不是列表,而是一个迭代器,无法使用索引来进行任何操作,否则就会引发错误"TypeError: 'range' object does not support item assignment"
16. 使用 ++ 或 --操作
a = 0
a++
print(a)
很多语言都支持 ++ 操作,但很遗憾python并不支持,上面的代码会报错“SyntaxError: invalid syntax”,上面的代码可以修改成这样
a = 0
a += 1
print(a)
17. 函数调用时参数数量错误
错误1
def func(a, b):
return a + b
print(func(4))
错误2
def func(a, b):
return a + b
print(func(4, 4, 5))
函数需要两个参数,错误1里在调用函数时只提供了1个参数,错误2里提供了3个错误,都会引发TypeError,错误内容分别是“TypeError: func() missing 1 required positional argument: 'b'” 和 “TypeError: func() takes 2 positional arguments but 3 were given”
18. 缺少安装包
import requests
如果你并没有安装requests库,程序在执行时就会报错“ImportError: No module named requests”,不要慌,使用pip安装就好了
19. 文件路径错误
f = open('a.txt')
print(f.read())
如果根本不存在a.txt这个文件,那么就会报错“FileNotFoundError: [Errno 2] No such file or directory: 'a.txt'”, 打开一个不存在的文件,就会引发FileNotFoundError。这个错误,对于初学者来说来烦恼了,尤其是windows用户,他们有时候会信誓旦旦的说,这个文件存在啊!
程序是不会骗人的,它说不存在,就一定是不存在,你的文件地址一定是错了,检查一下路径里究竟用的是/ 还是 \\, 另外检查一下是不是隐藏了文件的后缀。
python缩进格式错误的是_19个常见的python错误和异常相关推荐
- python缩进格式错误的是_以下关于Python缩进的描述中,错误的是()
以下关于Python缩进的描述中,错误的是() 过氧化氢催化分解反应速率常数的测定实验中,过氧化氢的初浓度是通过滴定法确定的.A:对B:错 WhichofthefollowingCANNOTbecon ...
- 【编码错误】新手程序员常见的编码错误
新手程序员常见的编码错误 文章目录 前言 一.没有了解需求就开始写代码 二.不沟通交流就开始做需求 三.代码素养差 四.编码问题总结 4.0不注重代码格式 4.0.1空格 4.0.2换行 4.1随意命 ...
- python缩进格式错误的是_Python 中常见错误总结
IndentationError: unexpected indent Python 中强制缩进,, IndentationError: unexpected indent 缩进错误 这类错误非常常见 ...
- python缩进格式错误修改病句_python缩进错误,求教。
展开全部 import random secret=random.randint(1,100) guess=0 tries=0 print("AHOY! I'm the Dread Pira ...
- python缩进格式作用_缩进(Python很将就格式)
空白在Python中是重要的.事实上行首的空白是重要的.它称为缩进.在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组. 这意味着同一层次的语句必须有相同的缩进.每一组这 ...
- python缩进格式作用_关于自动缩进格式问题,高手帮忙!
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 就是那个技术文档的第五章,我做不出来.以下是我的cmd命令和结果. D:\>cd python D:\python>cd mysite D:\ ...
- python缩进的用途和使用方法_如何用Python减少循环层次和缩进的技巧
本文实例分析了Python减少循环层次和缩进的技巧.分享给大家供大家参考,具体如下: 我们知道Python中冒号和缩进代表大括号,这样写已经可以节省很多代码行数,但是可以更优化,尽可能减少循环的层次和 ...
- python带格式复制excel样式和内容_使用python的xlrd,xlwt和xlutils.copy保留样式
以下是我将作为针对xlutils 1.4.1的补丁提出的代码使用示例# coding: asciiimport xlrd, xlwt# Demonstration of copy2 patch for ...
- python 字典取值的时间复杂度_五道常见的Python面试题一定不要答错!
第1题:阅读下面的代码,默读出A0,A1至An的最终值. 默读代码类的题目,相对来说是比较简单的.重点去研究列表解析,之后你就可以轻松的回答这些问题啦 第2题:如何提高python的运行效率? 1.数 ...
最新文章
- 0-1背包问题优化算法详解
- 【CKEditor】上传图片接口接收不到CKEditorFuncNum参数
- 使用poll实现的io多路复用服务端和客户端
- 扒一扒TCP协议与UDP协议
- 名创优品向港交所提交上市申请书
- matlab打开figure2,matlab figure2无法输出图形
- Java业务代理模式~
- L2-030 冰岛人 (25 分)-PAT 团体程序设计天梯赛 GPLT
- 安徽省计算机一级PDF,安徽省计算机一级考试试题 .pdf
- 全球与中国车载摄像头模块市场现状及未来发展趋势
- 复制粘贴之后出现问号怎么办_复制粘贴文字变乱码解决
- 深圳学校积分计算机,深圳积分入户初级计算机证书,居然也能积这么多分!
- 压力测试~一套完整的压力测试项目文档
- linux head
- 凉凉!写了个脚本,不小时锁了1W台手机。。
- 医美“四大发明”?一次令人上头的认知碰撞
- top和margin-top等的区别
- Java中hashcode和equals详解
- 计算机三级网络技术最全知识点总结一
- 神经网络优化算法nag_数值算法组(NAG)向Java开发库添加了新功能
热门文章
- CSAPP--信息的表示与处理
- php保存rar,php 解压rar文件
- JAVA发送邮件工具包_java mail 发送邮件工具包
- 电脑计算机d盘有用吗,d盘不见了,教您电脑d盘不见了怎么解决
- 砥志研思SVM(四) 序列最小最优化算法(SMO)论文翻译
- python 命令模式 设计模式_Python 设计模式——命令模式
- qtdesigner右击按钮没有 to slot_或添加“力感按钮”再升级,Apple Pencil会更“能打”?...
- android+放大缩小图片+有jar嘛,Android相册支持点击放大图片,滑动切换图片,手势放大缩小...
- c语言sleep函数_做游戏,学C语言,小球碰撞游戏,菜鸡者从黑窗口到图形化编程...
- curl shell 失败_linux – curl命令不在bash中通过shell脚本执行