python中的控制流
if
python条件语句是通过一条或多条语句的执行结果(True或false)来决定执行的代码块
if语句用于控制程序的执行,基本形式为:
if 判断条件:
执行语句。。。。
elif判断语句:
执行语句。。。。
else:
执行语句。。。。
注意:elif语句可以有0个或多个
while
while循环--在给定的判断他加你为true时执行循环体,否则退出循环体
for循环--重复执行语句
嵌套循环----在while循环体中嵌套for循环,也可以在for循环体中嵌套while循环
while判断条件:
执行语句。。。
执行语句可以时单个语句或语句块
判断条件开始时任何表达式,任何非零非空(null)的值均为true
当判断条件为false时,循环结束
for
python for循环可以遍历任何系列的项目,如一个列表或者一个字符串
for iterating_var in sequence:
statement(s)
# encoding=utf-8
# while True:
# print u'死循环'
# i = [1,2,3,4]
# n = 10
# for j in i:
# print j
# i.append(n+1)
# sta = 'adefdsf'
# for i in sta:
# print i
# lista = [1,2,3,4,5]
# for i in xrange(len(lista)):
# print lista[i]
# tupe = (1,2,3,4)
# for i in tupe:
# print i
break
break用于中断循环
continue用于结束当前的循环中剩余代码的执行,直接进入下一次循环(如果循环未结束)
嵌套循环
python语言允许在一个循环体里面嵌入另一个循环
python for循环嵌套语法:
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
练习题:嵌套循环输出10-50中个位带有1-5的所有数字
for i in xrange(10,51):
s = i%10
for j in xrange(1,6):
if s == j:
print i
pass 和是否可以迭代
pass是空语句,是为了保持程序结构的完整性,什么都不会做,仅仅是为了让语法不报错误
if 5>3:
pass
from collections import Iterable
print isinstance('abd',Iterable)#str是可迭代
print isinstance([1,2,3],Iterable)#list是可迭代
print isinstance(123,Iterable)#整数是不可迭代
直接退出多重循环
方法1:
class geroutofloop(Exception):pass
try:
for i in range(5):
for j in range(5):
for k in range(5):
if i==j==k==3:
raise geroutofloop()
else:
print i,'......',j,'......',k
except geroutofloop:
print 'pass'
方法2:
def test():
for i in range(5):
for j in range(5):
for k in range(5):
if i == j == k==3:
return
else:
print i,'....',j,'......',k
test()
方法3:
for i in range(5):
for j in range(5):
for k in range(5):
if i == j ==k ==3:
break
else:
print i,'...',j,'...',k
else:
print u'第一else'
continue
break
else:
print u'第二个else'
continue
break
python中的控制流的更多相关文章
- 归纳整理Python中的控制流语句的知识点
归纳整理Python中的控制流语句的知识点 Python 解释器在其最简单的级别,以类似的方式操作,即从程序的顶端开始,然后一行一行地顺序执行程序语句.例如,清单 1 展示了几个简单的语句.当把它们键 ...
- 9、python中的控制流
学习完python的基础与数据后,我们就可以编写一些简单的命令了.但这时我们发现,目前位置写出来的程序都是自上而下顺序地执行的.要想程序改变这种自上而下的流程多一点变化,我们就要学习三种程序中的语句. ...
- Python基础之控制流
介绍一些Python的基本的东西,你会发现,Python真的很简单.我也尽可能说得简单一些,因为我理解的也很简单. 在到目前为止我们所见到的程序中,总是有一系列的语句,Python忠实地按照它们的顺序 ...
- 《python解释器源码剖析》第11章--python虚拟机中的控制流
11.0 序 在上一章中,我们剖析了python虚拟机中的一般表达式的实现.在剖析一遍表达式是我们的流程都是从上往下顺序执行的,在执行的过程中没有任何变化.但是显然这是不够的,因为怎么能没有流程控制呢 ...
- Python中的并发编程
简介 我们将一个正在运行的程序称为进程.每个进程都有它自己的系统状态,包含内存状态.打开文件列表.追踪指令执行情况的程序指针以及一个保存局部变量的调用栈.通常情况下,一个进程依照一个单序列控制流顺序执 ...
- 可爱的 Python : Python中函数式编程,第一部分
英文原文:Charming Python: Functional programming in Python, Part 1 摘要:虽然人们总把Python当作过程化的,面向对象的语言,但是他实际上包 ...
- python中的协程及实现
1.协程的概念: 协程是一种用户态的轻量级线程.协程拥有自己的寄存器上下文和栈. 协程调度切换时,将寄存器上下文和栈保存到其他地方,在切换回来的时候,恢复先前保存的寄存器上下文和栈. 因此,协程能保留 ...
- 协程及Python中的协程
1 协程 1.1协程的概念 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程:协程是一种用户态的轻量级线程.(其实并没有说明白~) 我觉得单说协程,比较抽象,如果对线程有一定了解 ...
- 【python中调用shell命令使用PIPE】使用PIPE作为stdout出现假卡死的情况——将stdout重定向为输出到临时文件
在Python中,调用:subprocess.Popen(cmd, stdout = PIPE, stderr = PIPE, shell= true)的时候,如果调用的shell命令本身在执行之后会 ...
随机推荐
- windows 删除删除不掉的文件
DEL /F /A /Q \\?\%1RD /S /Q \\?\%1 windows下删除删除不掉的文件: 1.打开记事本,把上面的命令复制进去 2.保存,后缀名改为.bat,ok 3.把想要删除的文 ...
- Pig autocomplete 自动补全
在pig的grunt环境下,按TAB键可以自动补全命令,用户可以添加自己的补全信息. 在conf目录下创建autocomplete文件,添加如下内容: hdfs://vm1:8020/ 在grun ...
- Windows远程桌面Debian配置
由于xrdp.gnome和unity之间的兼容性问题,在Debian仍然无法使用xrdp登陆gnome或unity的远程桌面,现象是登录后只有黑白点为背景,无图标也无法操作.使用xrdp只能登录xfc ...
- gitlab 灾备
Gitlab创建备份 使用Gitlab一键安装包安装Gitlab非常简单,同样的备份恢复与迁移也非常简单.使用一条命令即可创建完整的Gitlab备份: gitlab-rake gitlab:ba ...
- 设计带有placeHolder的TextView
设计带有placeHolder的TextView 效果: 源码: PlaceholderTextView.h 与 PlaceholderTextView.m // // PlaceholderText ...
- Linux setfacl/getfacl命令详解
setfacl,命令名,设置文件访问控制列表,即ACL规则.而Acl(Access Control List)就是访问控制列表 setfacl常见命令参数 setfacl 2.2.51 -- 设定文件 ...
- 铁乐学python_day23_面向对象进阶1_反射
铁乐学python_day23_面向对象进阶1_反射 以下内容大部分摘自博客http://www.cnblogs.com/Eva-J/ isinstance()和issubclass() 两者的返回值 ...
- idea+maven+spring+cxf创建webservice应用(二)生成客户端程序
idea+maven+spring+cxf创建webservice应用(二)生成客户端程序,以上一篇为基础"idea+maven+spring+cxf创建webservice应用" ...
- CSS 鼠标样式
设置鼠标指针放在一个元素边界范围内时所用的光标形状,需要对元素的css属性cursor进行设置. cursor属性可能的值: default 默认光标(通常是一个箭头) auto 默认.浏览器设置的( ...
- RabbitMQ学习以及与Spring的集成(三)
本文介绍RabbitMQ与Spring的简单集成以及消息的发送和接收. 在RabbitMQ的Spring配置文件中,首先需要增加命名空间. xmlns:rabbit="http://www. ...