01 画蛇添足
多余的分号
Python语言与大多数编程语言不相同,它的语句后面不需要加分号结尾。有些 Python 新手具有编写其它语言的丰富经验,一时还适应不过来,经常习惯性的加上“分号”:
a = 5 # 正确a = 5; # 错误
02 附赘悬疣
无用的小括号
在Python中,if/witch语句的表达式部分并不需要加小括号(虽然加上程序仍可运行),与很多编程语言不同。
if a > b: # 正确 print(a)if (a > b): # 错误 print(a, b)
03 张冠李戴
赋值运算符判断相等
判断两个表达式/变量/常量/引用相等,应使用关系运算符“==”,而不是赋值运算符“=”。
if a == b: # 正确 print("相等!")if (a = b): # 错误
print("相等!")
04 强人所难
字符串与其他数据类型做“+”运算
字符串与其它数据类型的数据相加,这在有一些编程语言中支持,从而达到字符串拼接效果。但Python并不支持。
print('There is' + str(num) + 'apples.') # 正确
print('There is' + num + 'apples.') # 错误
05 转喉触讳
使用关键字作为变量名
Python3一共有33个关键字:
and,as,assert,break,class,continue,def,del,elif,else,except,finally,False,for,from,global,if,import,in,is,lambda,None,nonlocal,not,or,pass,raise,return,True,try,while,with,yield
变量命名、函数命名、类命名均应避免使用关键字。
06 打破常规
缩进错误
语句的缩进在Python语言中是非常重要的,缩进区分了语句的层次,同一层次的语句需要同一缩进宽度。
for i in range(10): print("Good Morning!!") # 循环内的语句 print("Good Afternoon!!") # 循环内的语句
print("Good Night!!") # 循环外的语句
07 强加于人
尝试修改字符串元素
Python当中string类型数据是不可修改的。
s = "hello world!"s[0] = 'H' # 错误
08 尔汝之交
错把两个对象当作一个
一个类创建的两个对象,分别有自己的内存空间,存储的数据互不影响
09 错勘贤愚
变量或函数名抄写错误
对于新手而言,抄写变量或函数名时出现抄写错误是家常便饭。
010
不自量力
list索引越界
l = [0, 1, 2, 3, 4, 5]
l 有 6 个元素,通过 l[0] -- l[5] 可正常访问,但是不存在 l[6],访问则报错。