发布网友 发布时间:2022-04-06 03:27
共3个回答
懂视网 时间:2022-04-06 07:49
对,python使用缩进来体现代码之间的逻辑关系,对缩进的要求非常严格。Python语言通过缩进来组织代码块,这是Python的强制要求。在代码前放置空格来缩进语句即可创建语句块,语句块中的每行必须是同样的缩进量。
和其它程序设计语言(如 Java、C 语言)采用大括号“{}”分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次。
在 Python 中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束。
注意,Python 中实现对代码的缩进,可以使用空格或者 Tab 键实现。但无论是手动敲空格,还是使用 Tab 键,通常情况下都是采用 4 个空格长度作为一个缩进量(默认情况下,一个 Tab 键就表示 4 个空格)。
例如,下面这段 Python 代码中(涉及到了目前尚未学到的知识,初学者无需理解代码含义,只需体会代码块的缩进规则即可):
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("体重过轻")
可以看到,第二行代码和第三航代码本来属于同一作用域,但我们手动修改了各自的缩进量,这会导致 SyntaxError 异常错误,如图 1 所示。
图 1 缩进不符合规范导致异常
对于 Python 缩进规则,初学者可以这样理解,Python 要求属于同一作用域中的各行代码,它们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。
IDLE 开发环境对缩进量的设置
在 IDLE 开发环境中,默认是以 4 个空格作为代码的基本缩进单位。不过,这个值是可以手动改变的,在菜单栏中选择Options -> Configure,会弹出如下对话框:
如图所示,通过拖动滑块,即可改变默认的代码缩进量,例如拖动至 2,则当你使用 Tab 键设置代码缩进量时,会发现按一次 Tab 键,代码缩进 2 个空格的长度。
不仅如此,在使用 IDLE 开发环境编写 Python 代码时,如果想通过设置多行代码的缩进量,可以使用 Ctrl+] 和 Ctrl+[ 快捷键,此快捷键可以使所选中代码快速缩进(或反缩进)。
推荐学习:Python视频教程
热心网友 时间:2022-04-06 04:57
python中,缩进表达每个模块,或者语句作用范围,也就是你所谓的所属关系。最短的缩进对较长的有包含关系,缩进前后没有要求,但是每个脚本应具有相同的缩进长度(TAB或者相同个数的空格)。缩进就是模块的表示,不用任何符号。
用C来对比:C中模块是用{}表示的,python缩进就代替了{}。
一般的,python模块有以下格式:
fuction1: [缩进]函数1作用范围 ... ... fuction_2: [缩进]函数2作用范围 ... ... # 定义函数def fuction(): [缩进]函数内容 ... ...追问但是你没说这句话为什么是错的啊?
热心网友 时间:2022-04-06 06:15
应该是用在语句之前