python的判断与循环
一、python的特殊缩进与语法
对于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 键缩进,有的是空格缩进,改为一致即可。
有时候代码采用合理的缩进但是缩进的情况不同,代码的执行结果也不同。有相同的缩进的代码表示这些代码属于同一代码块。例如:
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条件判断语句
格式为:
if 判断条件:
执行语句.....
else:
执行语句.....
其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句.
流程图如下:

具体例子如下:
a = 3
if a <= -1:
print('a是负数')
elif a == 0:
print ('a等于0')
else :
print('a是正数')
程序运行结果如下:

三、while语句
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件:
执行语句……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。如果条件判断语句永远为 true,循环将会无限的执行下去。执行流程图如下:

程序例子如下:
x = 5
while x>0:
print ('')
print ('')
print ('')
x -= 1
运行结果如下:

四、for循环
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。for循环的语法格式如下:
for iterating_var in sequence:
statements(s)
流程图:

相关函数:
1.enumerate():用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,语法为:
enumerate(sequence, [start=0])
参数:sequence -- 一个序列、迭代器或其他支持迭代对象。start -- 下标起始位置。
程序实例如下:
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print i, seq[i]
运行结果如下:

2.range():可创建一个整数列表。语法为:
range(start, stop[, step])
参数说明:start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
程序示例如下:
x = ''
for i in range(len(x)) :
print(x[i])
运行结果如下:

3.xrange():用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器,相比range()执行效率较高。语法:
xrange(stop)
xrange(start, stop[, step])
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如xrange(5)等价于xrange(0, 5);
stop: 计数到 stop结束,但不包括 stop。例如:xrange(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:xrange(0, 5) 等价于 xrange(0, 5, 1)
五、break与continue
1.break
Python break语句,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
程序代码如下:
for i in xrange(1,11):
if i == 3:
print ('hello world')
break
print ('i = %d'%i)
运行结果如下:

2.continue
Python continue 语句跳出本次循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句用在while和for循环中。
程序代码如下:
for i in xrange(1,11):
if i == 3:
print ('hello world')
continue
print ('i = %d'%i)
运行结果如下:

python的判断与循环的更多相关文章
- python条件判断与循环
条件判断 1.python缩进规则: 如果if语句判断是True,就把缩进的语句执行了,否则,什么也不做,比如: age=20 if age >= 18: print('your age is' ...
- Python条件判断和循环,range()函数
条件判断经常使用if语句进行判断,表达方式为:if 条件语句: :elif:else if...用于执行第一条不满足if的判断,继续执行其它的判断.比如一个简单的if判断 Python3取消 ...
- python之判断和循环
计算机之所以能做很多自动化的任务,因为它可以自己做条件判断.比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现: age = : print ('your age i ...
- 牛逼!Python的判断、循环和各种表达式(长文系列第2篇
流程控制是python语法很重要的一个分支,主要包括我们经常用到的判断语句.循环语句以及各种表达式,这也是上一篇文章没有介绍表达式的原因,在这篇文章中会更加系统全面的讲解这三方面的基础知识. 很多人学 ...
- Python条件判断和循环语句
一.条件判断语句 通过一条或多条语句的判断来决定是否执行代码块 1.if语句基本形式: if 判断条件: 语句块 例如: score=75if score>=60: print &q ...
- python 条件判断和循环
一.条件判断 if if age>= 18: 记住在判断语句后面要加上 : 还有要注意他的缩进 age = 20if age >= 18: print 'your age ...
- python条件判断和循环
条件判断 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> e ...
- Python基础——判断和循环
判断 缩进代替大括号. 冒号(:)后换号缩进. if test=100 if test>50: print('OK') print('test') if-elif-else test=50 if ...
- Python 条件判断 和循环
使用条件判断 if else # 条件派单 if else print('条件派单 if else') # s = input('请输入生日年号:') # birth = int(s) birth = ...
随机推荐
- 如何让MVC和多层架构和谐并存(一)
MVC的架构和多层架构,在ORM框架上是不兼容的.MVC的数据库操作需要通过实体框架Entity Framework,多层的数据库操作需要通过DAL层.我们最近刚完成的项目,实现了MVC和多层的并存, ...
- PHP判断变量是否小数并对小数进行处理
/*判断是否为小数demo*/$a = 1.2; if(is_int($a)){ echo "$a 是整数!"; }else{ echo "$a 不是整数!"; ...
- SPOJ - ORDERS--- Ordering the Soldiers---根据逆序对求原数组
题目链接: https://vjudge.net/problem/SPOJ-ORDERS 题目大意: 根据每个数字的逆序对求出原数组 解题思路: 举个例子: n = 5 a[ n ] = { 0, 1 ...
- Hash模板
;//一般为靠近总数的素数 struct Hashtable { int x;//hash存的值 Hashtable * next; Hashtable() { next = ; } }; Hasht ...
- 模拟水题,牛吃草(POJ2459)
题目链接:http://poj.org/problem?id=2459 题目大意:有C头牛,下面有C行,每头牛放进草地的时间,每天吃一个草,总共有F1个草,想要在第D的时候,草地只剩下F2个草. 解题 ...
- aop 和castle 的一些 学习文章
https://www.cnblogs.com/zhaogaojian/p/8360363.html
- Spring Security 实现手机验证码登录
思路:参考用户名密码登录过滤器链,重写认证和授权 示例如下(该篇示例以精简为主,演示主要实现功能,全面完整版会在以后的博文中发出): 由于涉及内容较多,建议先复制到本地工程中,然后在细细研究. 1. ...
- kubernetes-身份与权限认证(十四)
Kubernetes的安全框架 https://kubernetes.io/docs/reference/access-authn-authz/rbac/ •访问K8S集群的资源需要过三关:认证.鉴权 ...
- HTTP的DELETE方法Body传递参数问题解决
理论上,Delete method是通过url传递参数的,如果使用body传递参数呢? 前提: 使用HttpClient发送http请求 问题: httpDelete对象木有setEntity方法 解 ...
- C# 声明bool变量
与现实世界不同,在编程的世界中,每一件事情要么黑,要么白:要么对,要么错:要么是真的,要么是假的.例如,假定你创建一个名为x的整数变量,把值99赋给x,然后问:“x中包含了值99吗?”答案显然是肯定的 ...