初学python的常见十大错误,经验总结

一、忘记写冒号

在if,elif,for,while,class,def语句后面忘记添加”:“

会导致错误"SyntaxError:invalid syntax"

错误示例:

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

二、误用”=“做等值比较

错误示例:

score = 60

if score = 60:
    print('passed')

正确示例:

score = 60
if score == 60:
    print('passed')

三、变量没有定义

错误示例:

if age >= 18:
    print('adult')
print('END')

会导致:NameError:name 'age' is not defined

正确示例:

age= 20
if age >= 18:
    print('adult')
print('END')

四、字符串与非字符串连接

非字符串和字符串连接的时候,要将非字符串转换为字符串类型之后才能连接

错误示例;

num = 12
print('I have' + num +'apples.')

五、列表的索引位置

习惯性的认为列表元素的位置是从1开始的:其实是从0开始的

错误示例:

spam = ['cat','dog','mouse']
print(spam[3])

正确示例:

spam = ['1','2','3']
print(spam[2])

六,使用自增“++”自减“--”

错误示例:

spam = 0
spam++

正确示例:

spam= 0
spam +=1

七、使用关键字命名变量

python 3 中一共33个关键字:

False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,finally,for,from,globalif,import,in,is,lambda,nonlocal,not,or,pass,raise,return,try,while,with,yield

自定义变量时,变量名不能和这些关键字重复

八、索引元素位置时忘记调用len方法

通过索引位置来获取列表元素时,忘记要使用len方法函数来获取列表的长度:

错误示例:

fam = ['add','mom','son']
 
for i in range(fam):

print(fam[i]) 

正确示例:

fam = ['add','mom','son']
 
for i in range(len(fam)):

print(fam[i]) 

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

第一行定义了一个全局变量num,同时函数myFunction()也定义了一个同名的局部变量,但程序执行时是先查找局部变量的,所以在函数找到num之后就找不到外部查找了,此时就会出现print的时候变量num还没赋值的错误

错误示例:

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

10、缩进问题

和其他语言的语法最大的不同就是,python不能用括号来表示语句块,也不能用开始或结束标识符来表示,而是考缩进来区分代码块的....

错误示例:

print('hello')
    print('world')

上一篇:第十七章:运行时特性-sys:系统特定配置-模块和导入-处理导入错误


下一篇:Python技法2:函数参数的进阶用法