对于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")

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

错误表明,你使用的缩进方式不一致,有的是 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")

运行结果:

分割线以上的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代码中一行只能有一个语句,以新行作为为语句的结束符。如果一行含有多个语句将会抛出异常。

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

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

正解如下:

num1,num2,num3 =1,2,3

total = num1 + \

num2 + \

num3

print("total is : %d"%total)

Python空行

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

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

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

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

希望与广大网友互动??

点此进行留言吧!

python缩进和冒号_Python缩进和冒号详解相关推荐

  1. python字典的用法_Python字典的用法详解(附示例)

    本篇文章给大家带来的内容是关于Python字典的用法详解(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 字典的表现形式为:{key:value},键和值之间用冒号分隔,每个 ...

  2. python命名空间和闭包_Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】...

    本文实例讲述了Python函数基础用法.分享给大家供大家参考,具体如下: 一.什么是命名关键字参数? 格式: 在*后面参数都是命名关键字参数. 特点: 1.约束函数的调用者必须按照Kye=value的 ...

  3. python lambda函数加法_python lambda的使用详解

    1. lambda语法 lambda argument_list: expression lambda是Python预留的关键字,argument_list(参数列表)和expression(关于参数 ...

  4. python编程序列类型_python序列类型种类详解

    python序列类型包括哪三种 python序列类型包括:列表.元组.字典 列表:有序可变序列 创建:userlist = [1,2,3,4,5,6] 修改:userlist[5] = 999 添加: ...

  5. python做插件应用_Python插件机制实现详解

    插件机制是代码/功能反向依赖注入到主体程序的一种方法,编译型语言通过动态加载动态库实现插件.对于Python这样的脚本语言,实现插件机制更简单. 机制 Python的__import__方法可以动态地 ...

  6. python插件使用教程_Python插件机制实现详解

    插件机制是代码/功能反向依赖注入到主体程序的一种方法,编译型语言通过动态加载动态库实现插件.对于Python这样的脚本语言,实现插件机制更简单. 机制 Python的__import__方法可以动态地 ...

  7. python加载机制_Python插件机制实现详解

    插件机制是代码/功能反向依赖注入到主体程序的一种方法,编译型语言通过动态加载动态库实现插件.对于Python这样的脚本语言,实现插件机制更简单. 机制 Python的__import__方法可以动态地 ...

  8. python数据挖掘商业案例_Python数据科学-技术详解与商业实践-第八讲作业

    作者:Ben,著有<Python数据科学:技术详解与商业实践>.<用商业案例学R语言数据挖掘>.<胸有成竹-数据分析的SAS EG进阶>作者.2005年进入数据科学 ...

  9. python链表值讲解_python数据结构之链表详解

    python数据结构之链表详解 数据结构是计算机科学必须掌握的一门学问,之前很多的教材都是用C语言实现链表,因为c有指针,可以很方便的控制内存,很方便就实现链表,其他的语言,则没那么方便,有很多都是用 ...

  10. python count函数代码_python count函数用法详解_后端开发

    fgetc函数的作用详解_后端开发 fgetc函数的作用是从指定文件读入一个字符,要求文件的打开方式必须是以读或读写的方式或者追加的方 式,只写方式是不能读的. 在python中可以使用"c ...

最新文章

  1. mysql查询不同用户的最新一条记录
  2. python 使用mysqldb模块通过ssh隧道连接mysql
  3. 算法 --- 递归实现多级树展开结构
  4. webapi put 404
  5. 【蓝桥杯】历届试题 错误票据
  6. iOS沙盒文件夹及获取路劲方法
  7. 2018软工第六次作业
  8. FP Tree算法原理总结
  9. Java md5加密算法
  10. Android Gson to Json类型转换异常解决方法
  11. 软件测试周刊(第81期):能够对抗消极的不是积极,而是专注;能够对抗焦虑的不是安慰,而是具体。
  12. 【SHOI2008】【BZOJ1023】cactus仙人掌图
  13. 大赛征集令|首届“万应杯”低代码应用开发大赛报名开启啦!
  14. Plotly Express 详细使用指南,20组案例从入门到进阶(附源代码)
  15. vue中响应式是什么?怎么理解响应式原理?
  16. A2B音频总线在智能座舱中的应用
  17. 24 solar terms隐私条款
  18. 洛谷 P1726 上白泽慧音
  19. 阿里巴巴 Java性能诊断工具Arthas
  20. c语言中反比例函数定义,数学反比例函数知识点

热门文章

  1. postgreSQL源码分析——索引的建立与使用——B-Tree索引(2)
  2. 利用Referer请求头防止“盗链”
  3. mysql ip v4 v6_mysql IPv4 IPv6
  4. python怎么切图片_Python切割图片成九宫格
  5. mysql8.0其他机器访问_量子公司重大突破,量子机器学习实用化进程加速
  6. postman怎么传session_Day 47: 不搞懂Cookie和session誓不罢休
  7. 非常实用的设计类导航
  8. 青花瓷png免扣素材,中国风的标志素材
  9. 杜洋单片机C语言编程组成,8051单片机C语言编程模板
  10. ssm如何在mapper插入实时的时间_第一个ssm整合