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 (1)
Oct 31 Python
paramiko模块安装和使用(远程登录服务器)
Jan 27 Python
Python标准库defaultdict模块使用示例
Apr 28 Python
Python中的rjust()方法使用详解
May 19 Python
python编程开发之类型转换convert实例分析
Nov 13 Python
Python实现将照片变成卡通图片的方法【基于opencv】
Jan 17 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
Apr 17 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 Python
如何在sublime编辑器中安装python
May 20 Python
什么是Python中的匿名函数
Jun 02 Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 Python
PyCharm 2020.2.2 x64 下载并安装的详细教程
Oct 15 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实现查看邮件是否已被阅读的方法
2013/12/03 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
禁止刷新,回退的JS
2006/11/25 Javascript
点击下载链接 弹出页面实现代码
2009/10/01 Javascript
JS 自定义带默认值的函数
2011/07/21 Javascript
js图片向右一张张滚动效果实例代码
2013/11/23 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
js ajaxfileupload.js上传报错的解决方法
2016/05/05 Javascript
JS 清除字符串数组中,重复元素的实现方法
2016/05/24 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
JS jQuery使用正则表达式去空字符的简单实现代码
2017/05/20 jQuery
Vue实现购物车场景下的应用
2017/11/27 Javascript
jQuery事件blur()方法的使用实例讲解
2019/03/30 jQuery
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
vue实现登录功能
2020/12/31 Vue.js
[01:13]2014DOTA2西雅图邀请赛 舌尖上的TI4
2014/07/08 DOTA
Python的Django框架使用入门指引
2015/04/15 Python
python pygame实现球球大作战
2019/11/25 Python
python 检查数据中是否有缺失值,删除缺失值的方式
2019/12/02 Python
python异常处理和日志处理方式
2019/12/24 Python
python实现人脸签到系统
2020/04/13 Python
表单button的outline在firefox浏览器下的问题
2012/12/24 HTML / CSS
美国最好的保健品打折网店:Swanson
2017/08/04 全球购物
渗透攻击的测试步骤
2014/06/07 面试题
食品行业求职人的自我评价
2014/01/19 职场文书
班主任个人工作反思
2014/04/28 职场文书
护理专业求职信
2014/06/15 职场文书
2014年大学生党员评议表自我评价
2014/09/20 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
python 判断文件或文件夹是否存在
2022/03/18 Python
SQL Server远程连接的设置步骤(图文)
2022/03/23 SQL Server
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server
SQL Server2019安装的详细步骤实战记录(亲测可用)
2022/06/10 SQL Server
git中cherry-pick命令的使用教程
2022/06/25 Servers