Python缩进和选择
缩进
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 = 1
x = 1
if i > 0:
x = x
1
print 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
1
elif i == 0:
print 'i is
0'
i = i *
10
else:
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 <条件1>:数据分析师培训
statement
elif <条件2>:
statement
elif <条件3>:
statement
else:
statement
Python缩进和选择的更多相关文章
- Python快速学习03:运算 & 缩进和选择
前言 系列文章:[传送门] 这篇昨晚本来要出的,去搭了帐篷,在学校的屋顶上. 运算 运算,不得不说的是运算符. 数学 +, -, *, /, **, %,// 判断 ==, !=, >, > ...
- python简介和python工具的选择
Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有 ...
- 6.Python缩进规则(包含快捷键)
和其它程序设计语言(如 Java.C 语言)采用大括号“{}”分隔代码块不同,Python 采用代码缩进和冒号( : )来区分代码块之间的层次. 在 Python 中,对于类定义.函数定义.流程控制语 ...
- Python与Go选择排序
#!/usr/bin/env python # -*- coding: utf-8 -*- # 选择排序 # 时间复杂度O(n^2) def selection_sort(array): length ...
- python缩进报错
1.这个错误应该已经好久了:也应该熟悉了才对 IndentationError: unexpected indent python 缩进错误:意外缩进Python 但今天的问题有点特殊,我想在程序中间 ...
- Python实现的选择排序算法原理与用法实例分析
Python实现的选择排序算法原理与用法实例分析 这篇文章主要介绍了Python实现的选择排序算法,简单描述了选择排序的原理,并结合实例形式分析了Python实现与应用选择排序的具体操作技巧,需要的朋 ...
- python基础(五)缩进和选择
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 缩进 Python最具特色的是用缩进来标明成块的代码.我下面以if选择结构来举例. ...
- python基础05 缩进与选择
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 缩进 Python最具特色的是用缩进来标明成块的代码.我下面以if选择结构来举例. ...
- Python基础05 缩进和选择
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 缩进 Python最具特色的是用缩进来标明成块的代码.我下面以if选择结构来举例. ...
随机推荐
- 记mysql 启动不了了的解决方法
系统: centos7 本地的环境,mysql启动不了,查看 /var/log/mysqld.log 有以下内容 2018-12-24T08:05:38.090527Z 0 [Warning] TIM ...
- 要原版 jdk-6u14-windows-i586.exe
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#j ...
- Windows Server 2008 R2 部署服务
Windows Server 2008 R2 部署服务 部分参考: Windows Server 2008 R2 部署服务 - 马睿的技术博客 - 51CTO技术博客http://marui.blog ...
- phpCOW机制详解
写时复制(Copy-on-Write,也缩写为COW),顾名思义,就是在写入时才真正复制一份内存进行修改. COW最早应用在*nix系统中对线程与内存使用的优化,后面广泛的被使用在各种编程语言中,如C ...
- Windows操作系统下创建进程的过程
进程(Process)是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位.程序只是一组指令的有序集合,它本身没有任何运行的含义,只是一个静态实体.而进程则 ...
- JeecgBoot 2.1.1 代码生成器AI版本发布,基于SpringBoot+AntDesign的JAVA快速开发平台
此版本重点升级了 Online 代码生成器,支持更多的控件生成,所见即所得,极大的提高开发效率:同时做了数据库兼容专项工作,让 Online 开发兼容更多数据库:Mysql.SqlServer.Ora ...
- xml中的<if>和截取字符串
<#if (envPollute=='1')>√</#if><#if (envPollute=='0')>√</#if>${as_title?subst ...
- MySQL-Utilities:mysqldbcompare及跳过复制错误
mysqldbcompare也是MySQL-Utilities工具集的一个脚本.mysqldbcompare从两个数据库比较对象和数据的不同.数据库中的对象包括:表.视图.触发器.存储过程.函数和事件 ...
- Tornado Demo1---webspider分析
Demo源码地址 https://github.com/CHUNL09/tornado/tree/master/demos/webspider 这个Demo的作用是用来获取特定URL的网页中的链接(链 ...
- Linux常用知识
1.Redhat 系统按如下系统启动:加载内核执行init程序/etc/rc.d/rc.sysinit #由init执行的第一个脚本/etc/rc.d/rc${RUNLEVEL}d/* #$RUNLE ...