Python缩进和冒号详解


Posted in Python onJune 01, 2016

对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

例如:

if True:
  print("Hello girl!") #缩进一个tab的占位
else:            #与if对齐
  print("Hello boy!") #缩进一个tab的占位

Python对代码的缩进要求非常严格,如果不采用合理的代码缩进,将抛出SyntaxError异常。

if True:
  print("Hello girl!")
else:
  print("Hello boy!")
 print("end")

运行该段代码将会抛出异常。

Python缩进和冒号详解

错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。

有时候代码采用合理的缩进但是缩进的情况不同,代码的执行结果也不同。有相同的缩进的代码表示这些代码属于同一代码块。

例如:

# -*- coding: UTF-8 -*-
if True:
  print("Hello girl!")
else:
  print("Hello boy!")
print("end")
print("=========华丽的分割线===========")
if True:
  print("Hello girl!")
else:
  print("Hello boy!")
  print("end")

运行结果:

Python缩进和冒号详解

分割线以上的print("end")未缩进与if对齐,因此它与if属于同一代码块,执行完if的操作,执行输出。

分割线一下的print("end")与print("Hello boy!")保持一致的缩进,则它与print("Hello boy!")属于else之内的代码块。

 缩进相同的一组语句构成一个代码块,我们称之代码组。

 像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。

 我们将首行及后面的代码组称为一个子句(clause)

Python多行语句

Python语句中一般以新行作为为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示。

num1 = 1
num2 = 2
num3 = 3
total = num1 + \
num2 + \
num3
print("total is : %d"%total)

语句中包含[], {} 或 () 括号就不需要使用多行连接符

days = ['Monday', 'Tuesday', 'Wednesday',
    'Thursday', 'Friday']
print(days)

Python代码中一行只能有一个语句,以新行作为为语句的结束符。如果一行含有多个语句将会抛出异常。

Python缩进和冒号详解

 

该种方式完全是像java在声明变量呀。

Python2中貌似可以用分号分隔,我机器上没有装2.x没有试,亲测Python3下不可以。

Python缩进和冒号详解

正解如下:

num1,num2,num3 =1,2,3
total = num1 + \
num2 + \
num3
print("total is : %d"%total)

Python空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

记住:空行也是程序代码的一部分。

以上这篇Python缩进和冒号详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 检查数组元素是否存在类似PHP isset()方法
Oct 14 Python
Python fileinput模块使用介绍
Nov 30 Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 Python
Python内置模块turtle绘图详解
Dec 09 Python
Python基于辗转相除法求解最大公约数的方法示例
Apr 04 Python
解决python中使用plot画图,图不显示的问题
Jul 04 Python
学习python可以干什么
Feb 26 Python
python 实现提取log文件中的关键句子,并进行统计分析
Dec 24 Python
简单了解python字符串前面加r,u的含义
Dec 26 Python
使用keras实现BiLSTM+CNN+CRF文字标记NER
Jun 29 Python
python opencv角点检测连线功能的实现代码
Nov 24 Python
Python 微信公众号文章爬取的示例代码
Nov 30 Python
Python注释详解
Jun 01 #Python
深入理解python try异常处理机制
Jun 01 #Python
python学习 流程控制语句详解
Jun 01 #Python
python+Django+apache的配置方法详解
Jun 01 #Python
python中函数默认值使用注意点详解
Jun 01 #Python
Python中基础的socket编程实战攻略
Jun 01 #Python
Google开源的Python格式化工具YAPF的安装和使用教程
May 31 #Python
You might like
PHP中使用CURL伪造来路抓取页面或文件
2011/05/04 PHP
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
33种Javascript 表格排序控件收集
2009/12/03 Javascript
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
2014/08/15 Javascript
JavaScript中使用Callback控制流程介绍
2015/03/16 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
图解js图片轮播效果
2015/12/20 Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
2016/12/14 Javascript
详解React中的组件通信问题
2017/07/31 Javascript
js使用html2canvas实现屏幕截取的示例代码
2017/08/28 Javascript
微信小程序使用image组件显示图片的方法【附源码下载】
2017/12/08 Javascript
vue中如何实现后台管理系统的权限控制的方法示例
2018/09/19 Javascript
JS获取月的第几周和年的第几周实例代码
2018/12/05 Javascript
记录vue项目中遇到的一点小问题
2019/05/14 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
2019/10/09 Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
2020/04/14 Javascript
python 动态获取当前运行的类名和函数名的方法
2014/04/15 Python
Python中实现的RC4算法
2015/02/14 Python
Django中传递参数到URLconf的视图函数中的方法
2015/07/18 Python
Python模拟三级菜单效果
2017/09/11 Python
在Python中给Nan值更改为0的方法
2018/10/30 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
python线程池如何使用
2020/05/28 Python
python3中布局背景颜色代码分析
2020/12/01 Python
CSS 3.0文字悬停跳动特效代码
2020/10/26 HTML / CSS
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
免税水晶:Duty Free Crystal
2019/05/13 全球购物
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
销售员岗位职责范本
2014/02/03 职场文书
传播学专业毕业生自荐书
2014/07/01 职场文书
优秀应届本科生求职信
2014/07/19 职场文书
员工教育培训协议书
2014/09/27 职场文书
2015年秋季小班开学寄语
2015/05/27 职场文书
三好学生主要事迹怎么写
2015/11/03 职场文书
大学优秀学生主要事迹材料
2015/11/04 职场文书
nginx实现发布静态资源的方法
2021/03/31 Servers