对于刚新手入门的Pythoner,在学习过程中运行代码时多多少少会碰到一些不正确,一开始很有可能会变得较为费劲。伴随着工作经验的累积,勤能补拙。当碰到一些运行时错误时,它能够迅速精准定位初始难题。下边例举普遍不正确,期待对各位有一定的协助。

1.

忘掉在if.for.def.elif.else.class等后边再加上。

将造成“拼写错误:失效英语的语法”,如下所示所显示:

假如垃圾短信== 42print('Hello!')

2.

应用=替代= =。

它还会继续造成“拼写错误:失效英语的语法”。

=是赋值运算符,而= =是较为计算。不正确产生在下列编码中:

假如垃圾短信= 42:打印出(' Hello!')

3.

不正确地应用缩近。

它会造成“缩近不正确:出现意外缩近”.“缩近不正确:未缩近与一切外界缩近等级也不配对”和“缩近不正确:必须缩近块”。

请记牢,缩近增加量仅在以:末尾的句子以后应用,随后您务必还原到之前的缩近文件格式。不正确产生在下列编码中:

打印出(‘您好!’)打印出(‘你好!’)

或是:

假如垃圾短信== 42:打印出(' Hello!')打印出(‘你好!’)

4.

忘掉在for循环句子中启用len()。

type error:“list”目标不可以表述为整数金额。

一般,您期待根据数据库索引迭代更新目录或字符串数组原素,这必须启用range()涵数。请记牢回到len值,而不是目录。

不正确产生在下列编码中:

垃圾短信= ['猫','狗','耗子']I在范畴内(垃圾短信):打印出(垃圾短信[i])

5.

试着改动字符串数组的值。

type error:“str”目标不兼容项分派。

字符串数组是不能变的基本数据类型,不正确产生在下列编码中:

spam = '我有一只宠物狗'垃圾短信[13] = 'r '打印出(垃圾短信)

恰当的办法是:

spam = '我有一只宠物狗'垃圾短信=垃圾短信[:13] 'r' 垃圾短信[14:]打印出(垃圾短信)

6.

试着将非字符串数组值与字符串数组联接。

typeerror:没法将“int”目标变换为字符串数组隐式。

不正确产生在下列编码中:

numEggs = 12print('我有' nummeggs '生鸡蛋')

恰当的办法是:

numEggs = 12print('我有' str(numEggs) '生鸡蛋')numEggs = 12print('我有%s个生鸡蛋'%(NuMegS))

7.

忘掉在字符串数组的开头和结尾再加上冒号。

造成“拼写错误:eolwhile扫描仪字符串数组文本”。

不正确产生在下列编码中:

打印出(您好!)打印出('您好!)myName = 'Al'print('自己的名字是' myName 。“你现在还好吗,”)

8.

或是涵数名拼写错误了。

結果是“名字不正确:未定义名字‘fooba’”。

不正确产生在下列编码中:

foobar = 'Al'print('自己的名字是' fooba)spam = ruond(4.2)spam = Round(4.2)

9.

方式名拼写错误了。

attribute error:“str”目标沒有特性“lower”。

不正确产生在下列编码中:

垃圾短信=“这也是小写字母的。”spam = spam.lowerr()

10.

引入超出了所有的较大数据库索引。

数据库索引不正确:目录数据库索引超出。

不正确产生在下列编码中:

spam = ['猫','狗','耗子']打印出(spam[6])

11.

应用不会有的词典键值。

造成“key error:‘垃圾短信’”。

不正确产生在下列编码中:

spam = {'cat': 'Zophie ',' dog': 'Basil ',' mouse ':' beach ' } print('我的宠物班马的名称是' spam['班马'])

12.

试着应用Python关键词做为用户标识符。

造成“拼写错误:失效英语的语法”。

Python键不可以作为用户标识符,不正确发生在下列编码中:

class = '解析几何'

Python3的关键字是:and.as.assert.break.class.continue.def.del.elif.else.except.false.finally.for.from.global.if.import.in.is.lambda。无,非当地,不,或,传送,提升,回到,真,试着,与此同时,与,妥协

13.

在界定的新自变量中应用增加量操作符。

結果是“名字不正确:未定义名字‘foo bar’”。

申明自变量时不必应用0或空字符串做为初值,因此应用自增操作符的语句spam = 1相当于spam = spam 1,这代表着spam必须特定一个合理有效的初值。

不正确产生在下列编码中:

spam = 0 spam = 42生鸡蛋 = 42

14.

在界定静态变量以前,在涵数中应用静态变量(这时,有一个局部变量与静态变量同名的)。

造成“UnboundLocalerror:取值前引入了静态变量“foobar”。

在涵数中应用静态变量来得到同名的的局部变量是比较复杂的。应用标准是,假如在涵数中界定了任何东西,假如它只在涵数中应用,则它是局部性的,不然它是局部变量。

这代表着在界定涵数以前,不可以将其作为涵数中的局部变量。

不正确产生在下列编码中:

some var = 42 def my function():print(some var)some var = 100 myFunction()

15.

试着应用range()建立整数金额目录。

type error:“range”目标不兼容项分派。

有时候您期待获得整数金额的有序列表,因而range()好像是转化成该数据库的好方法。可是,您必须记牢,range()回到的是“range object”,而不是具体的目录值。

不正确产生在下列编码中:

垃圾短信=范畴(10)垃圾短信[4] = -1

恰当的办法是:

垃圾短信=目录(范畴(10))垃圾短信[4] = -1

16.

沒有 或-全自动增长和全自动下降操作符。

造成“拼写错误:失效英语的语法”。

假如你习惯C .Java.PHP等各种语言表达。,您也许必须试着应用 或--来提高和降低自变量。Python中沒有那样的操作符。

不正确产生在下列编码中:

spam = 1spam

恰当的办法是:

spam = 1spam = 1

17.

忘掉将self主要参数加入到方式的第一个主要参数中。

typeerror: mymethod()不接纳一切主要参数(1给出)。

不正确产生在下列编码中:

class Foo():def myMethod():print(' Hello!')a = Foo()a.myMethod()

评论(0条)

刀客源码 游客评论