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 MySQLdb模块连接操作mysql数据库实例
Apr 08 Python
Python中类型关系和继承关系实例详解
May 25 Python
深入剖析Python的爬虫框架Scrapy的结构与运作流程
Jan 20 Python
numpy中矩阵合并的实例
Jun 15 Python
python3实现磁盘空间监控
Jun 21 Python
django认证系统实现自定义权限管理的方法
Jul 16 Python
Python 字符串与数字输出方法
Jul 16 Python
详解Python使用Plotly绘图工具,绘制甘特图
Apr 02 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
python时间日期操作方法实例小结
Feb 06 Python
Python新建项目自动添加介绍和utf-8编码的方法
Dec 26 Python
用python修改excel表某一列内容的操作方法
Jun 11 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二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
php实现mysql事务处理的方法
2014/12/25 PHP
如何解决PHP无法实现多线程的问题
2015/09/25 PHP
php数组函数array_key_exists()小结
2015/12/10 PHP
jquery异步调用页面后台方法‏(asp.net)
2011/03/01 Javascript
JQuery+JS实现仿百度搜索结果中关键字变色效果
2011/08/02 Javascript
jquery实现叠层3D文字特效代码分享
2015/08/21 Javascript
js实现网站最上边可关闭的浮动广告条代码
2015/09/04 Javascript
jQuery实现仿QQ在线客服效果的滚动层代码
2015/10/15 Javascript
利用yarn实现一个webpack+react种子
2016/10/25 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
2017/02/15 Javascript
轻松实现jQuery添加删除按钮Click事件
2017/03/13 Javascript
nodejs服务搭建教程 nodejs访问本地站点文件
2017/04/07 NodeJs
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
Vue-router 切换组件页面时进入进出动画方法
2018/09/01 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
如何实现js拖拽效果及原理解析
2020/05/08 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
解决ant design vue中树形控件defaultExpandAll设置无效的问题
2020/10/26 Javascript
Vue使用鼠标在Canvas上绘制矩形
2020/12/24 Vue.js
Windows平台Python连接sqlite3数据库的方法分析
2017/07/12 Python
Python常用字符串替换函数strip、replace及sub用法示例
2018/05/21 Python
Python使用numpy产生正态分布随机数的向量或矩阵操作示例
2018/08/22 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
关于html字符串正则判断和匹配的具体使用
2019/12/12 HTML / CSS
美津浓巴西官方网站:Mizuno巴西
2019/07/24 全球购物
设置器与访问器的定义以及各自特点
2016/01/08 面试题
大学生全国两会报告感想
2014/03/17 职场文书
教室标语大全
2014/06/21 职场文书
电焊工岗位工作职责
2014/07/09 职场文书
中国梦读书活动总结
2014/07/10 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
同事去世追悼词
2015/06/23 职场文书
python pygame入门教程
2021/06/01 Python