和其它程序设计语言(如 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 所示。

对于 Python 缩进规则,初学者可以这样理解,Python 要求属于同一作用域中的各行代码,它们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。

IDLE 开发环境对缩进量的设置

在 IDLE 开发环境中,默认是以 4 个空格作为代码的基本缩进单位。不过,这个值是可以手动改变的,在菜单栏中选择Options -> Configure,会弹出如下对话框:

如图所示,通过拖动滑块,即可改变默认的代码缩进量,例如拖动至 2,则当你使用 Tab 键设置代码缩进量时,会发现按一次 Tab 键,代码缩进 2 个空格的长度。

不仅如此,在使用 IDLE 开发环境编写 Python 代码时,如果想通过设置多行代码的缩进量,可以使用 Ctrl+] 和 Ctrl+[ 快捷键,此快捷键可以使所选中代码快速缩进(或反缩进)。

python怎么缩进_怎么使用python缩进相关推荐

  1. python 循环赋值_计算机二级Python语言程序设计 第2章Python语言基本语法元素

    第二章学习知识导图 本章概述:本章目的是了解基础的Python相关知识 考点主要是: 1) 程序的基本语法元素:程序的格式框架.缩进.注释.变量.命名.保留字.数据类型.赋值语句.引用 2) 基本输入 ...

  2. python正则表达式操作指南_比较详细Python正则表达式操作指南(re使用)

    就其本质而言,正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.使用这个小型语言,你可以为想要匹配的相应字符串集指定规则:该 ...

  3. python 调用控制台_如何使用Python的交互控制台

    简介 Python的交互控制台(也叫做Python解释器,或是Python Shell)为程序员提供了"运行指令"和"不创建文件测试测试代码"的快速途径. 交互 ...

  4. python mqtt库_如何在 Python 中使用 MQTT

    Python 是一种广泛使用的解释型.高级编程.通用型编程语言.Python 的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词).Python 让开发者能 ...

  5. php java python容易入门_先学习Python之后再学习PHP与java会更好吗

    学过python语言之后在去学习PHP javascript 这些编程语言是不是会更好的能快速理解, 有python基础之后,再去学习php语言 理解上 是不是更方便上手, 我现在主要想学习专研 PH ...

  6. python len函数_知识清单Python必备的69个函数,你掌握了吗?

    本文纲要 Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间.目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很 ...

  7. python优化网站_[练习] 用PYTHON来优化网站中的图片

    我到公司以来,第一次加班,哇,加一晚上加一上午,现在还没下班的迹象,555,困. 对于网站中的一些关键的页面,多重缓存.静态化.程序代码优化--之外,为了提高用户打开页面的速度,图片是必须要优化的. ...

  8. python递归函数例题_递归案例python

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 而对应的中文翻译 "递归" 却表达了两个意思:"递 ...

  9. 网易图灵学院python公开课_图灵学院 Python全系列教程全栈工程师 python视频教程下载...

    大家怎么说? 老师很好,我认为,若想学好python,应该多练.多想.多看.学习资料不能仅限于老师给定的这些内容,这些毕竟是入门资料 老师讲的真不错,对于我们这种小白来说 也比较容易懂,虽然有些时候自 ...

  10. python列表拆包_详解python 拆包可迭代数据如tuple, list

    详解python 拆包可迭代数据如tuple, list 拆包是指将一个结构中的数据拆分为多个单独变量中. 以元组为例: >>> a = ('windows', 10, 25.1, ...

最新文章

  1. [机器学习]超参数优化算法-SuccessiveHalving与Hyperband
  2. 不属于html5表单元素的是,HTML5 表单元素
  3. STM32F103RCT6+USART串口打印
  4. 为什么我的世界服务器显示红叉,我的世界藏宝图怎么看红叉
  5. 时间序列数据如何插补缺失值?
  6. ubuntu打开网易云音乐
  7. EDGEX FOUNDRY配置参数 --- sys-mgmt-agent
  8. ubuntu离线安装免费版本Typora
  9. Android 圆形头像实现
  10. python生成文章标题_利用简书首页文章标题数据生成词云
  11. BSGS 大步小步算法
  12. 怎么用python绘制柱状图_如何用python快速简单的制作柱状图?
  13. 李艾30场直播数据全解析,挖掘直播高转化技巧
  14. 《手把手教你学嵌入式无人机》——入门航模遥控器使用(MC6C)
  15. Windows非法文件和目录的创建及删除方式
  16. 图论算法 有图有代码 万字总结 向前辈致敬
  17. 发现微创软件在我心目中排全国第一的一个理由
  18. 【故障诊断】基于贝叶斯优化支持向量机的轴承故障诊断附matlab代码
  19. 电路知识经典汇总(邱关源)
  20. 录像类电子文件永久保存格式MXF介绍

热门文章

  1. ArcGIS 10.2生成渔网(fishnet)
  2. FishNet网络搭建代码阅读(2)——fishnet.py
  3. MBA面试系列之----中文面试宝典(二)
  4. 谈谈创业或者参加创业团队的成败与心得
  5. 2022-1-21 计算机组成原理 —— 二进制编码
  6. 2022-1-21 Leetcode 599. 两个列表的最小索引总和
  7. Filament 渲染引擎剖析 之 FrameGraph 2 动态构建渲染管线
  8. html5怎么做成五行五列,word将文字转换成五行五列的表格怎么做
  9. 最近最火的《大秦赋》,用Python抓取相关数据,发现了秘密
  10. 用LoadRunner进行脚本录制