缩进

Python最具特色的是用缩进来标明成块的代码。我下面以if选择结构来举例。if后面跟随条件,如果条件成立,则执行归属于if的一个代码块。

先看C语言的表达方式(注意,这是C,不是Python!)if ( i > 0 ){    x = 1;    y = 2;}

如果i > 0的话,我们将进行括号中所包括的两个赋值操作。括号中包含的就是块操作,它隶属于if。

在Python中,同样的目的,这段话是这样的if i > 0:    x = 1    y = 2

在Python中, 去掉了i > 0周围的括号,去除了每个语句句尾的分号,表示块的花括号也消失了。

多出来了if ...之后的:(冒号), 还有就是x = 1 和 y =2前面有四个空格的缩进。通过缩进,Python识别出这两个语句是隶属于if。

Python这样设计的理由纯粹是为了程序好看。

if语句

写一个完整的程序,命名为ifDemo.py。这个程序用于实现if结构。i = 1x = 1if i > 0:    x = x+1print x

$python ifDemo.py  # 运行

程序运行到if的时候,条件为True,因此执行x = x+1,。

print x语句没有缩进,那么就是if之外。

如果将第一句改成i = -1,那么if遇到假值 (False), x = x+1隶属于if, 这一句跳过。 print x没有缩进,是if之外,不跳过,继续执行。

这种以四个空格的缩进来表示隶属关系的书写方式,以后还会看到。强制缩进增强了程序的可读性。

复杂一些的if选择:i = 1

if i > 0:

print 'positive i'    i = i + 1elif i == 0:

print 'i is 0'    i = i * 10else:

print 'negative i'    i = i - 1

print 'new i:',i

这里有三个块,分别属于if, elif, else引领。

Python检测条件,如果发现if的条件为假,那么跳过后面紧跟的块,检测下一个elif的条件; 如果还是假,那么执行else块。

通过上面的结构将程序分出三个分支。程序根据条件,只执行三个分支中的一个。

整个if可以放在另一个if语句中,也就是if结构的嵌套使用:

i  = 5

if i > 1:

print 'i bigger than 1'

print 'good'

if i > 2:

print 'i bigger than 2'

print 'even better'

if i > 2 后面的块相对于该if缩进了四个空格,以表明其隶属于该if,而不是外层的if。

总结

if语句之后的冒号

以四个空格的缩进来表示隶属关系, Python中不能随意缩进

if  :

statement

elif :

statement

elif :

statement

else:

statement

python缩进教学_Python缩进和选择学习相关推荐

  1. python中if缩进规则_Python缩进与if语句 空格的魅力

    缩进 Python最具特色的是用缩进来标明成块的代码.我下面以if选择结构来举例.if后面跟随条件,如果条件成立,则执行归属于if的一个代码块. 先看C语言的表达方式(注意,这是C,不是Python! ...

  2. python缩进块_Python缩进规则(包含快捷键)

    和其它程序设计语言(如 Java.C 语言)采用大括号"{}"分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次. 在 Python 中,对于类定义. ...

  3. python的缩进意义_python缩进错误的原因是什么

    要求严格的代码缩进是python语法的一大特色,就像C语言家族(C.C++.Java.C#等等)中的花括号一样重要,在大多数场合还有必要.在很多代码规范里面也都有要求代码书写按照一定的规则进行换行和代 ...

  4. python可以用tab缩进吗_python缩进可以用tab吗

    Python中的每一条语句都有一个缩进级别,并且缩进级别会使用栈的数据结构进行存储.在开始读取文件之前,0(表示缩进级别为0,无 缩进)会被首先压入栈中.然后从文件开头到末尾,依次读取每行逻辑代码,每 ...

  5. 新手先学python还是c语言,初学者应该选择学习Python还是C语言

    小编给大家分享一下初学者应该选择学习Python还是C语言,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧! 有人觉得应该从C语言开始入门,原因如下: 1.C语言是你上大学第一门接触的编程语 ...

  6. python应为缩进块_Python缩进

    在Python中的空白是重要的.实际上,在一行开始的空格是重要的.这被称为缩进.在逻辑行开头的前导空白(空格和制表符)用于确定逻辑行的缩进级别,它用于依次确定语句的分组. 这意味着一起的语句必须有相同 ...

  7. python随机数生成验证码_Python随机数random模块学习,并实现生成6位验证码

    一.前言 学习python随机数random模块的使用 ,并使用模块中的函数,实现6位验证码生成 二.random模块 1.random.random() 返回0-1直接的随机数,类型为float & ...

  8. 零基础学python知乎-零基础应该选择学习 java、php、前端 还是 python?

    零基础先学习JAVA吧 在大家看之前,我要先声明两点. 1.由于我本人是Java后端开发出身,因此所推荐的学习内容是Java Web和Java后端开发的路线,非Java Web和Java后端开发的同学 ...

  9. python numpy数据类型_Python之numpy数组学习(一)

    原标题:Python之numpy数组学习(一) 我回来了. 前言 前面已经安装并学习了Python中的科学计算库,今天主要学习下numpy数组. Numpy数组对象 Numpy中的多维数组称为ndar ...

最新文章

  1. 屏幕后处理——Bloom
  2. 20162303 结对编程-四则运算(挑战出题)
  3. USB Kill v2.0,一个可以瞬间烧毁电脑或平板的“U盘”
  4. OpenGL创建一个GLFW窗口的实例
  5. [转]C++中的static关键字的总结
  6. 采用加密技术进行数据保护的5大优势
  7. flex java oracle_Flex使用Blazeds与Java交互及自定义对象转换详解-DATAGRID读取ORACLE数据...
  8. Duplicate entry...for key...
  9. CodeForces 297A Parity Game (脑补题)
  10. 如何使用phpDesigner 编写一个表格
  11. 【基金量化研究系列】大类资产配置研究(四)——基于马科维茨模型的资产配置研究
  12. js移除某个样式_JS removeAttribute()方法:删除元素的某个属性
  13. 利用WebSphere Edge Server构建冷轧系统负载均衡
  14. 常见电线电缆电阻的检测方法盘点
  15. ubi命令用法(linux)
  16. 微信怎么收银行卡的消息服务器,微信零钱提现,这样操作,可以免去手续费
  17. Android Reboot 命令执行过程
  18. 【Camera】Camera中光圈、快门、感光度
  19. 有一个字符串,如11.2美元34人民币;如何将数字与单位分开,放入数组中呢,数组比如 attr[0]=11.2 attr[1]=美元 ,依次类推
  20. ai边缘平滑_Illustrator初学者的问题 AI新增页面 AI形状 渐变以后边缘有锯齿 修整工具...

热门文章

  1. 牛客网SQL篇刷题篇(32-37)
  2. C++多重继承师生类复盘
  3. c++代码好玩_一行Python代码能干嘛?快来看看吧!有表白利器哦
  4. java配置jndi连接数_JavaWeb:Tomcat下配置数据源(JNDI)连接数据库 | 学步园
  5. 获取当前系统时间c语言,使用C语言获取当前系统的时间
  6. linux按日期备份mysql,在Linux、Windows上如何按日期逻辑备份数据库
  7. C语言 文件读写 fputc 函数 - C语言零基础入门教程
  8. apache mysql 登陆_Apache站点,注册登陆功能的实现
  9. 叶金荣mysql教程_mysql优化--叶金荣老师讲座笔记
  10. 怎么判断到了月初_双春年与无春年怎么区分?2021年是寡妇年吗?