python index 报错_python基础语法常见报错类型
一、TypeError:类型错误,对象⽤来表示值的类型⾮预期类型时发⽣的错误。
###
错误例⼦:
age=18
print(‘我的年龄是’+age)
###
报错信息:TypeError:canonlyconcatenatestr(not"int")tostr
这是类型错误,提示必须是⼀个字符串,不能是数字。
###
解决⽅法:在使⽤“+”做拼接的时候,必须使⽤字符串,或者把数字转化成字符串。
###
正确代码:
age=18
print(‘我的年龄是’+str(age))
###
⼆、AttributeError:属性错误,特性引⽤和赋值失败时会引发属性错误
###
tp=('1','3','5')
tp.append('7')
print(tp)
###
报错信息:AttributeError:'tupe'objecthasnoattribute'append'
提示:属性错误:元组对象没有“append”的属性,简单来说元组是不可变对象,解决⽅法:
把元组换成列表。
###
三、NameError:试图访问的变量名不存在。
###
举个简单的例⼦,只运⾏⼀⾏print(a),会报错:NameError:name'a'isnotdefined。简单
来说,就是变量a没有定义,解决⽅法是在前⾯给a赋值,⽐如加上⼀⾏a=''。
###
还有种需要⼩⼼处理的是:变量或者函数名拼写错误。如:
name='卡⻄'
print('Mynameis'+nane)
###
报错信息和上⾯⼀样:NameError:name'nane'isnotdefined。这类错误只要根据报错信
息,细⼼检查下拼写,就能很快解决~
###
四、SyntaxError:语法错误,代码形式错误
###
###
报错信息为:SyntaxError:invalidsyntax
提示是:语法错误,⾮法的语法。
###
当报错的时候,要注意回到错误信息的那⼀⾏,然后从下往上,慢慢查找,此处这个程序就是
因为if语法忘了在判断语句后⾯加“:”,所以导致的错误。
###
另外,初学者写代码时注意:使⽤英⽂符号哦~
###
五、KeyError:在读取字典中的key和value时,如果key不存在,就会触发KeyError错
误。
###
举个⼩例⼦:
dict={'a':1,'b':2,'c':3}
print(dict['d'])
报错信息为:KeyError:'d'。
###
第⼀种解决⽅法,⾸先测试key是否存在,然后才进⾏下⼀步操作,如:
###
###
第⼆种,利⽤dict内置的get(key[,default])⽅法,如:print(dict['d'])改为print(dict.get('d'))
###
如果key存在,则返回其vaue,否则返回None;使⽤这个⽅法永远不会触发KeyError。
###
六、IndexError:索引错误,使⽤的索引不存在,常索引超出序列范围,序列中没有此
索引(index)
###
报错信息:IndexError:listindexoutofrange
提示:索引错误,列表索引超出了范围。
###
解决办法:回头看列表的⻓度,索引是要⼩于列表的⻓度的。上⾯的列表⻓度是5,⽽索引却
要打印第七个,所以是超出了列表的⻓度。
###
七、IndentationError:缩进错误
###
###
报错:IndentationError:expectedanindentedblock
原因:缩进有误,Python的缩进⾮常严格,⾏⾸多个空格,少个空格都会报错。
###
由于不熟悉python编码规则,不易查找,所以会成为新⼿常犯的⼀个错误。像def,class,
if,for,while等代码块都需要缩进。
###
⼋、TabError:Tab和空格混⽤
###
相邻的两句的缩进需要统⼀使⽤tab或统⼀使⽤空格,不能混⽤。否则就会出现以下报错:
TabError:inconsistentuseoftabsandspacesinindentation。
###
tab键本质上是制表符,⽽不是缩进符,不同的⽂本编辑器中制表符代表的空格宽度不⼀,如
果代码需要跨平台或跨编辑器读写,建议不要使⽤制表符(tab键)。
PS:要是以上文章有BUG的话欢迎指正,整合不易,求大佬点赞收藏,谢谢!
python index 报错_python基础语法常见报错类型相关推荐
- python 条件表达式换行_Python基础语法 - LongKing-Xu的个人空间 - OSCHINA - 中文开源技术交流社区...
python基础语法 一.标识符 在Python中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. 在Python中的标识符是区分大小写的. 在Python中以下划线开头的标识符是有 ...
- python语句块规范_Python基础语法——代码规范判断语句循环语句
Python基础语法 代码的执行顺序从上到下 从左到右 代码规范模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的 每 ...
- python保留字分支结构_Python基础语法----缩进、注释、命名与保留字、数据类型、分支语句、函数...
缩进 -严格明确:缩进是语法的一部分,缩进不正确程序运行错误 -所属关系:表达代码间包含和层次关系的唯一手段 -长度一致:程序内一致即可,一般用4个空格或1个TAB 注释 -用于提高代码可读性的辅助性 ...
- python缩进编码教程_python基础语法教程:行与缩进
缩进 使用缩进来表示代码块,不需要使用大括号 {} . 同一个代码块的语句必须包含相同的缩进空格数. 多行语句 Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠()来实现多行语 ...
- python定义字典列表_Python基础语法(四)—列表、元组、字典、集合、字符串
列表 基本概念列表是有序的元素集合,所有元素放在一对中括号中,用逗号隔开,没有长度限制: 列表索引值以0为开始值,-1为从未尾的开始位置. 列表可以使用+操作符进行拼接,使用*表示重复. 当列表元素增 ...
- python 复数求模_Python基础语法知识汇总(学习党的最爱!)
本文章包含了Python一系列基本知识,其中包括:基本数据类型(整数,浮点数,复数,字符串):分支语句:异常处理:函数:局部变量与全局变量:递归:组合数据类型(集合,元组,列表,字典):文件基本操作. ...
- python语言基本认识_Python基础语法合集——了解python
1. 了解Python Python是一种解释型(这意味着开发过程中没有了编译这个环节).面向对象(支持面向对象的风格或代码封装在对象的编程技术).动态数据类型的交互式(可在命令行中通过Python ...
- python的常量变量_Python基础语法-常量与变量
Python是一门强类型的动态语言. 字面常量,变量没有类型,变量只是在特定的时间指向特定的对象而已,变量所指向的对象是有类型的. 变量:变量在赋值时被创建,它可以是任何对象的引用,但必须在引用前被赋 ...
- python的数字运算_Python基础语法——数字运算
数字运算 编程是将问题数据化的一个过程,数据离不开数字,Python的数字运算规则与我们学习的四则运算规则是一样的,即使不使用Python来编写复杂的程序,也可以将其当作一个强大的计算器.打开Pyth ...
最新文章
- c语言程序设计论文结构,c语言顺序结构设计实验报告.docx
- 内核的Makefile与Kconfig关系解析
- nginx html解析插件,nginx配置信息的解析流程
- 对象的释放Dispose和Close对比
- Biorhythms(POJ-1006)
- pythondd_python学习笔记(五)之字典2-阿里云开发者社区
- nginx 405 not allowed问题解决方法
- 命名之法 —— 时间、季节、地点
- 远离故障的十大原则-好文
- 凌阳单片机c语言延时函数,凌阳单片机C语言(网站整理).doc
- sqldependency 实现原理_2020阿图什方形摇摆筛安装原理
- mysql mssql 性能对比_详解mysql分区实验测试--非分区表与分区表的性能对比
- java拆分pdf_itextpdf拆分pdf问题
- Excel如何给单元格加斜线
- Linux基础----文件管理、用户管理、用户权限
- apache zeppelin安装
- 俞军跟我聊了三个小时产品(1):用户不是人,是需求的集合
- Python(1)概述与基础
- 第47章 QR-Decoder-OV5640二维码识别—零死角玩转STM32-F429系列
- 2020年二建YL黄金AB卷-目前只有建筑-机电-市政-管理