欢迎来到天天文库
浏览记录
ID:8795206
大小:80.50 KB
页数:6页
时间:2018-04-08
《17个新手常见python错误》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、当初学Python时,想要弄懂Python的错误信息的含义可能有点复杂。这里列出了常见的的一些让你程序crash的运行时错误。1)忘记在if,elif,else,for,while,class,def声明末尾添加:(导致“SyntaxError:invalidsyntax”)该错误将发生在类似如下代码中:1ifspam==422print('Hello!')2)使用=而不是==(导致“SyntaxError:invalidsyntax”)=是赋值操作符而==是等于比较操作。该错误发生在如下代码中:1if
2、spam=42:2print('Hello!')3)错误的使用缩进量。(导致“IndentationError:unexpectedindent”、“IndentationError:unindentdoesnotmatchanyouterindetationlevel”以及“IndentationError:expectedanindentedblock”)记住缩进增加只用在以:结束的语句之后,而之后必须恢复到之前的缩进格式。该错误发生在如下代码中:01print('Hello!')02print('
3、Howdy!')0304或者:0506ifspam==42:07print('Hello!')08print('Howdy!')0910或者:1112ifspam==42:13print('Hello!')4)在for循环语句中忘记调用len()(导致“TypeError:'list'objectcannotbeinterpretedasaninteger”)通常你想要通过索引来迭代一个list或者string的元素,这需要调用range()函数。要记得返回len值而不是返回这个列表。该错误发生在如下代
4、码中:1spam=['cat','dog','mouse']2foriinrange(spam):3print(spam[i])5)尝试修改string的值(导致“TypeError:'str'objectdoesnotsupportitemassignment”)string是一种不可变的数据类型,该错误发生在如下代码中:1spam='Ihaveapetcat.'2spam[13]='r'3print(spam)而你实际想要这样做:1spam='Ihaveapetcat.'2spam=spam[:13
5、]+'r'+spam[14:]3print(spam)6)尝试连接非字符串值与字符串(导致“TypeError:Can'tconvert'int'objecttostrimplicitly”)该错误发生在如下代码中:1numEggs=122print('Ihave'+numEggs+'eggs.')而你实际想要这样做:1numEggs=122print('Ihave'+str(numEggs)+'eggs.')34或者:56numEggs=127print('Ihave%seggs.'%(numEggs
6、))7)在字符串首尾忘记加引号(导致“SyntaxError:EOLwhilescanningstringliteral”)该错误发生在如下代码中:01print(Hello!')0203或者:0405print('Hello!)0607或者:0809myName='Al'10print('Mynameis'+myName+.Howareyou?')8)变量或者函数名拼写错误(导致“NameError:name'fooba'isnotdefined”)该错误发生在如下代码中:01foobar='Al'0
7、2print('Mynameis'+fooba)0304或者:0506spam=ruond(4.2)0708或者:0910spam=Round(4.2)9)方法名拼写错误(导致“AttributeError:'str'objecthasnoattribute'lowerr'”)该错误发生在如下代码中:1spam='THISISINLOWERCASE.'2spam=spam.lowerr()10)引用超过list最大索引(导致“IndexError:listindexoutofrange”)该错误发生在如
8、下代码中:1spam=['cat','dog','mouse']2print(spam[6])11)使用不存在的字典键值(导致“KeyError:‘spam’”)该错误发生在如下代码中:1spam={'cat':'Zophie','dog':'Basil','mouse':'Whiskers'}2print('Thenameofmypetzebrais'+spam['zebra'])12)尝试使用Python关键字作为变量名(导致“Synt
此文档下载收益归作者所有