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实现DNS正向查询、反向查询的例子
Apr 25 Python
Python的内存泄漏及gc模块的使用分析
Jul 16 Python
Python中列表的一些基本操作知识汇总
May 20 Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
基于Python闭包及其作用域详解
Aug 28 Python
Python下载网络文本数据到本地内存的四种实现方法示例
Feb 05 Python
python实现单向链表详解
Feb 08 Python
一个简单的python爬虫程序 爬取豆瓣热度Top100以内的电影信息
Apr 17 Python
PyQt5每天必学之工具提示功能
Apr 19 Python
python中多层嵌套列表的拆分方法
Jul 02 Python
Python实现电视里的5毛特效实例代码详解
May 15 Python
基于Python测试程序是否有错误
May 16 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
关于URL最大长度限制的相关资料查证
2014/12/23 PHP
PHP实现的浏览器检查类
2016/04/11 PHP
php下载远程大文件(获取远程文件大小)的实例
2017/06/17 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
JS获得浏览器版本和操作系统版本的例子
2014/05/13 Javascript
AngularJS + Node.js + MongoDB开发的基于高德地图位置的通讯录
2015/01/02 Javascript
关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
2016/05/17 Javascript
Vuejs第十二篇之动态组件全面解析
2016/09/09 Javascript
AngulaJS路由 ui-router 传参实例
2017/04/28 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
2017/07/11 jQuery
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
vue slot 在子组件中显示父组件传递的模板
2018/03/02 Javascript
如何安装控制器JavaScript生成插件详解
2018/10/21 Javascript
基于vuex实现购物车功能
2021/01/10 Vue.js
jQuery实现穿梭框效果
2021/01/19 jQuery
Python随机生成数模块random使用实例
2015/04/13 Python
python实现简易通讯录修改版
2018/03/13 Python
python防止随意修改类属性的实现方法
2019/08/21 Python
Django 在iframe里跳转顶层url的例子
2019/08/21 Python
python实现的config文件读写功能示例
2019/09/24 Python
html5实现九宫格抽奖可固定抽中某项奖品
2020/06/15 HTML / CSS
美国护肤咨询及美容产品电商:Askderm
2017/02/24 全球购物
美国婚礼装饰和活动用品批发供应商:Event Decor Direct
2018/10/12 全球购物
英国剑桥包中文官网:The Cambridge Satchel Company中国
2018/11/06 全球购物
经典优秀个人求职信分享
2013/12/12 职场文书
公司薪酬管理制度
2014/01/31 职场文书
学生顶撞老师的检讨书
2014/09/17 职场文书
领导干部作风整顿剖析材料
2014/10/11 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
2015年幼儿园教育教学工作总结
2015/05/25 职场文书
鲁冰花观后感
2015/06/10 职场文书
golang json数组拼接的实例
2021/04/28 Golang
Python 多线程处理任务实例
2021/11/07 Python
Python 中 Shutil 模块详情
2021/11/11 Python
MySQL的存储函数与存储过程的区别解析
2022/04/08 MySQL