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中几个常用的类方法
Apr 08 Python
浅谈用Python实现一个大数据搜索引擎
Nov 28 Python
关于Django显示时间你应该知道的一些问题
Dec 25 Python
Python统计单词出现的次数
Apr 04 Python
用Python实现读写锁的示例代码
Nov 05 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
Aug 13 Python
手把手教你pycharm专业版安装破解教程(linux版)
Sep 26 Python
Python OpenCV视频截取并保存实现代码
Nov 30 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
wxPython修改文本框颜色过程解析
Feb 14 Python
python 实现弹球游戏的示例代码
Nov 17 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调用Oracle存储过程的方法
2008/09/12 PHP
php 一元分词算法
2009/11/30 PHP
php输出表格的实现代码(修正版)
2010/12/29 PHP
PHP模板引擎Smarty中变量的使用方法示例
2016/04/11 PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
2016/12/29 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
PHP实现的杨辉三角求解算法分析
2019/03/11 PHP
javascript 弹出层组件(升级版)
2011/05/12 Javascript
jq选项卡鼠标延迟的插件实例
2013/05/13 Javascript
js中如何复制一个对象并获取其所有属性和属性对应的值
2013/10/24 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
JavaScript对表格或元素按文本,数字或日期排序的方法
2015/05/26 Javascript
JS实现关闭当前页而不弹出提示框的方法
2016/06/22 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
2016/10/14 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
Vue EventBus自定义组件事件传递
2018/06/25 Javascript
Vue2.0点击切换类名改变样式的方法
2018/08/22 Javascript
Vue 通过自定义指令回顾v-内置指令(小结)
2018/09/03 Javascript
解决vue中虚拟dom,无法实时更新的问题
2018/09/15 Javascript
nodejs图片处理工具gm用法小结
2018/12/12 NodeJs
微信小程序修改checkbox的样式代码实例
2020/01/21 Javascript
koa2的中间件功能及应用示例
2020/03/05 Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
2020/11/11 Javascript
深入浅析python定时杀进程
2016/06/06 Python
使用Python中的tkinter模块作图的方法
2017/02/07 Python
python Crypto模块的安装与使用方法
2017/12/21 Python
python筛选出两个文件中重复行的方法
2018/05/31 Python
python3使用SMTP发送HTML格式邮件
2018/06/19 Python
Python 实现顺序高斯消元法示例
2019/12/09 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
2019/12/13 Python
Debenhams百货英国官方网站:Debenhams UK
2016/07/12 全球购物
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
自考生毕业自我鉴定
2013/10/10 职场文书
办公室内勤工作职责
2013/12/11 职场文书
国际贸易毕业生自荐书
2014/06/22 职场文书
《英雄联盟》2022日蚀、月蚀皮肤演示 黑潮亚索曝光
2022/04/13 其他游戏