和其它程序设计语言(如 Java、C 语言)采用大括号“{}”分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次。

在 Python 中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束。

注意,Python 中实现对代码的缩进,可以使用空格或者 Tab 键实现。但无论是手动敲空格,还是使用 Tab 键,通常情况下都是采用 4 个空格长度作为一个缩进量(默认情况下,一个 Tab 键就表示 4 个空格)。

例如,下面这段 Python 代码中(涉及到了目前尚未学到的知识,初学者无需理解代码含义,只需体会代码块的缩进规则即可):

height=float(input("输入身高:")) #输入身高

weight=fioat(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缩进规则 至少_6.Python缩进规则(包含快捷键)相关推荐

  1. Python学习(九)Python缩进规则

    其它程序设计语言(如 Java.C 语言)采用大括号"{}"分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次. 在 Python 中,对于类定义.函 ...

  2. python缩进块_Python缩进规则(包含快捷键)

    和其它程序设计语言(如 Java.C 语言)采用大括号"{}"分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次. 在 Python 中,对于类定义. ...

  3. Python缩进规则(包含快捷键)

    python和其它程序设计语言(如 Java.C 语言)采用大括号"{}"分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次. 在 Python 中, ...

  4. python默认的1个代码缩进量是几个空格_Python缩进规则(包括快捷键)

    1 和其它程序设计语言(如 Java.C 语言)采用大括号"{}"分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次.在 Python 中,对于类定义 ...

  5. python 全部缩进一行_Python开发工具:缩进规则的使用

    参考文章来自:https://docs.python.org/2.0/ref/indentation.html 分享一波 前言 Python中的缩进(Indentation)决定了代码的作用域范围.这 ...

  6. python使用缩进作为语法边界-python二级备考 day2

    1. python 语言概述 python 蟒蛇 拥有者 PSF (Python Software Foundation) 非盈利组织,致力于保护python语言 开放.开源.发展 Guido 198 ...

  7. 在python中可以使用if作为变量名_变量,注释,缩进,细数Python优雅风 | Python基础连载(二)...

    开篇 在之后的几期文章中,你将会陆续学习到Python的六个标准数据类型 不过在此之前,有一些先导内容需要掌握,所以这一期就先来介绍一下这些内容. 文章首发于微信公众号:我将在南极找寻你.专注干货分享 ...

  8. python 全部缩进一行_每天三分钟一起学python之(三)python的基本语法

    每天三分钟,我们一起学python.在上一期PyCharm的安装及常用配置中,给大家介绍了PyCharm的安装方法和一些常用的配置.安装过PyCharm之后,我们就可以开始编写python程序了,今天 ...

  9. Python基础语法1(语法和规则)

    Python是一门脚本语言,相比与C/C++,Java的优势就是不用事先进行编译,可以直接读取脚本文件,一边解释一边执行 大家好,我是纪宁 本文将介绍pytho的基础语法第一部分,关于一些python ...

最新文章

  1. oracle 数据有引号,oracle插入字符串数据时字符串中有'单引号问题
  2. Android之SurfaceView(一)
  3. 定点量化误差python仿真.零极点(1)
  4. yum安装php和apache先装哪个,yum如何安装apache与php
  5. 需求:整个网站不能出现以下两个链接。思路:检索到网站中凡是出现该链接的都让它的href值为空...
  6. AgileConfig-轻量级配置中心 1.1.0 发布,支持应用间配置继承
  7. 全国计算机二级公共知识点,全国计算机二级公共基础知识知识点
  8. Spring Boot学习笔记——Spring Boot与ActiveMQ的集成
  9. php foreach结果如何保存_每天一个PHP语法四引用使用及实现
  10. 如果你在aws ec2上安装php7x 的时候提示 libwebp 错误,可以试一下下面这个代码...
  11. 寄存器间接寻址缺点_详解西门子间接寻址之地址寄存器间接寻址
  12. Protocol Buffer 序列化原理大揭秘
  13. 关于Lambda表达式的简单理解,以及基础使用,仅限新手
  14. Firefox浏览器购物比价插件:惠惠购物助手
  15. 行为树(Behavior Tree)
  16. 简单英译汉SQL脚本
  17. Linux服务器CPU飙升排查
  18. win7为什么安装不了python_【如何在win7下安装Python及配置】电脑无法安装python
  19. C++中string类下的begin,end,rbegin,rend的用法
  20. CSDN的个人主页如何添加微信二维码

热门文章

  1. Scratch中的全局变量,私有变量与克隆体变量(一)
  2. 【转】自动化测试用例设计的原则
  3. python游戏联机后直接掉线_玩家:和你一起联机的人,掉线了吗
  4. 万向区块链技术研究报告 | Polygon技术调研
  5. Linux修改文件内容【命令】
  6. 计算机毕业设计net艺苑琴行预约管理系统
  7. Vuex--mutations--使用/教程/实例
  8. linux串口通讯64k出错,打开串口列表的注册表项出错?
  9. AnyLink Vpn办公网部署,用于安全办公
  10. vue+elementui项目中引入第三方字体文件的方法示例