和其他程序设计语言(如Java、C语言)采用大括号“{}”分隔代码块不同,Python采用代码缩进和冒号( : )来区分代码块之间的层次。
在Python中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示州蠢此代码块的结束。
注意,Python中实现对代码的缩进,可以弊亏使用空格或者Tab键实现。但无论是手动敲空格,还是使用Tab键,通常情况下都是采用4个空格长度作为一个缩进量(默认情况下,一个Tab键就表示4个空格)。
例如,下面这段代码中(涉及到了目前尚未学到的知识,初学者无需理解代码含义,只需体会代码块的缩进规则即可):
height=float(input("输入身高:")) #输入身高
weight=float(input("输入体重:")) #输入体重
bmi=weight/(height*height) #计算BMI指数
#判断身材是否合理
if bmi<18.5:
#下面 2 行同属于 if 分支语句中包含的代码,因此属于同一作用域
print("BMI指数为:"+str(bmi)) #输出BMI指数
print("体重过轻")
if bmi>=18.5 and bmi<24.9:
print("BMI指数为:"+str(bmi)) #输出BMI指数
print("正常范围,注意保持")
if bmi>=24.9 and bmi<29.9:
print("BMI指数为:"+str(bmi)) #输出BMI指数
print("体重过重")
if bmi>=29.9:
print(BMI指数为:"+str(bmi)) #输出BMI指数
print("肥胖")
Python对代码的缩进要求非常严格,同一个级别代码块的缩进量必须一样,否则解释器会报SyntaxError异常错误。例如,对上面代码做错误改动,将位于同一作用域中的2行代码,它们的缩进量分别设置为4个空格和3个空格,如下所示:
if bmi<18.5:
print("BMI指数为:"+str(bmi)) #输出BMI指数
print("体重过轻")
对于Python缩进规则,初学者可以这样理解,Python要求属于同一作用域中的各行代码,它租迹神们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。
Python的缩进要求是强制的,因为缩进不对直接影响了代码逻辑。
案例一:
乍看以为结果是输出HelloWorld ,执行以下,结果是什么都没输出。
因此正确写法是:
可以看到 sayHello() 前进了一个缩进,这时再租陪执行这段代码就可以看到万恶的 HelloWorld 了。
因为代码块变成了这样,因此上面一个代码块定义了一个函数,下面的代码块是执行函数。
案例二:
执行以下,发现报错了,错误提示是getName属性不存在!
其实再分析一下代码块,可以看出,噢,getName函蔽型散数位置不对,它被写在say函数里面了。
因此正确写法是:
案例三:
就是强大的pycharm
缩进不缩进,代码是否逻辑错误,软件都会提示宏氏,省心多了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)