python控制流
1. if...elif...else:
语法:
if 判断条件:
语句...
elif 判断条件:
语句...
else:
语句...
#elif语句可以有0个或多个
2. while和for循环:
while 判断条件:
语句...
for iterating_var in sequence:
statements(s)
可以在while循环体中嵌套for循环;也可以for循环中嵌套while循环。
3. for...else:for正常结束都会执行else
for...else:for正常结束(不执行break结束)都会执行else;若执行break,则不执行else
>>> for i in range(3):
... print i
... else:
... print "no break happens!"
...
0
1
2
no break happens!
>>> for i in range(5):
... print i
... break
... else:
... print "no break happend"
...
0
4. while...else:while正常结束执行else
while...else:while正常结束(不执行break结束)都会执行else;若执行break,则不执行else
>>> n=2
>>> while n>1:
... print n
... n-=1
... else:
... print "no break happend"
...
2
no break happend
>>> n=2
>>> while n>0:
... print n
... n-=1
... break
... else:
... print "no break happend"
...
2
(1) False:空、0、None、False
>>> bool([])
False
>>> bool(0)
False
>>> bool(None)
False
(2). True:1、True
>>> bool(1)
True
>>> bool(True)
True
>>> bool("s")
True
>>>
5. break、continue:
break:结束循环(彻底结束)
continue:结束本次循环,继续下一次循环
>>> for i in range(10):
... if i % 2 ==0:
... continue
... print i
...
>>> for i in range(10):
... if i%2==0:
... break
... print i
...
6. 遍历:
(1) 通过元素遍历
(2). 通过索引遍历
len():统计长度
>>> len("abc")
3
>>> len({1:2}) #统计字典长度
1
>>>
例1: for和while遍历字符串
>>> s="abcd"
>>> for i in range(len(s)):
... print s[i]
...
>>> s
'abcd'
>>> i=0
>>> while i<len(s):
... print s[i]
... i+=1
...
例2: 遍历列表中的元组:
#coding=utf-8
a=[1,(12,3),(4,5),90]
for i in a:
if isinstance(i,(tuple,list)):
for j in i:
print j
else:
print i
7. for、while嵌套循环:
嵌套循环:在一个循环体里嵌入另一个循环
可以在while循环体中嵌套for循环;也可以for循环中嵌套while循环。
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
8. 直接退出多重循环:
(1). return退出多重循环:
#coding=utf-8
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()
(2). 异常:
class getoutofloop(Exception):pass #异常
try:
for i in range(5):
for j in range(5):
for k in range(5):
if i == j == k == 3:
raise getoutofloop()
else:
print i,'----',j,'----',k
except getoutofloop:
pass
print "done"
(3). break:(多个break)
#coding=utf-8
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:continue
break
else:continue
break
python控制流的更多相关文章
- python控制流 If-else
控制流 If-else 我们处理现实生活中的问题时会做出决定,就像决定买哪种相机或者怎样更好的打篮球.同样我们写计算机程序的时候也要做相同的事情.我们通过 if-else 语句来做决定,我们使 ...
- Python 控制流、列表生成式
Python的三种控制流.认识分支结构if.认识循环结构while.认识循环结构for.Break语句.Continue语句.
- 了解Python控制流语句——continue 语句
continue 语句用以告诉 Python 跳过当前循环块中的剩余语句,并继续该循环的下一次迭代. 案例(保存为 continue.py): while True: s = input('Enter ...
- 了解Python控制流语句——if语句
控制流 截止到现在,在我们所看过的程序中,总是有一系列语句从上到下精确排列,并交由 Python 忠实地执行.如果你想改变这一工作流程,应该怎么做?就像这样的情况:你需要程序作出一些决定,并依据不同的 ...
- python控制流 -- if、for、while、range()、sys.exit()
1.布尔值 “布尔”数据类型只有两种:True和False #首字母以T或F开头,后面小写,且不能作为变量赋值 2.比较操作符 == 等于 != 不等于 < 小于 > 大于 &l ...
- Python 控制流代码混淆简介,加大别人分析你代码逻辑和流程难度
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 王平 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自 ...
- Python 简明教程 --- 6,Python 控制流
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io Talk is cheap, show me the code. -- Linus Torvalds ...
- 了解Python控制流语句——break 语句
这篇文章主要介绍了详解Python中break语句的用法,是Python入门的呼出知识,需要的朋友可以参考下,python基础系列教程之-Python break语句 跳出循环 break 语句用以中 ...
- 了解Python控制流语句——for 循环
for 循环 Python教程中for...in 语句是另一种循环语句,其特点是会在一系列对象上进行迭代(Iterates),意即它会遍历序列中的每一个项目.我们将在后面的Python序列(Seque ...
- 了解Python控制流语句——while 语句
while 语句 Python 中 while 语句能够让你在条件为真的前提下重复执行某块语句. while 语句是 循环(Looping) 语句的一种.while 语句同样可以拥有 else 子句作 ...
随机推荐
- DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等
AA记录: 将域名指向一个IPv4地址(例如:100.100.100.100),需要增加A记录 NSNS记录: 域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录 SOASO ...
- ElasticSearch搜索解析
这篇介绍稍多,篇幅可能有点多,下面会针对一些重要的点做一些小测试 搜索返回文档解析 hits搜索返回的结果中最重要的一部分其中包含了 索引信息(_index,_type,_index,_source, ...
- php7安装参数编译
系统:Centos6.8 软件包:php-7.0.14.tar.gz yum install bzip2 bzip2-devel -y yum install curl curl-devel -y y ...
- Apache ActiveMQ 远程代码执行漏洞 (CVE-2016-3088)案例分析
部署ActiveMQ运行环境 在linux上部署apache-activemq-5.10.0-bin.tar.gz 通过tar -zxvf apache-activemq-5.10.0-bin.ta ...
- JMeter中BeanShell断言使用一
Jmeter Ant Task如何让beanshell断言失败的详细信息展示在report里面 首先必须给beanshell断言添加FailureMessage if(${TotalClient_SS ...
- net core体系-web应用程序-4net core2.0大白话带你入门-8asp.net core 内置DI容器(DependencyInjection,控制翻转)的一点小理解
asp.net core 内置DI容器的一点小理解 DI容器本质上是一个工厂,负责提供向它请求的类型的实例. .net core内置了一个轻量级的DI容器,方便开发人员面向接口编程和依赖倒置(IO ...
- net core体系-3再次认识net core
1 什么是ASP.NET Core ASP.NET Core 是一个全新的开源.跨平台框架,可以用它来构建基于网络连接的现代云应用程序,比如:Web 应用,IoT(Internet Of Things ...
- PHP生成二维码,PHPQRCode
声明一个方法,直接调用即可 <?php /** * 功能:生成二维码 * @param string $qr_data 手机扫描后要跳转的网址 * @param string $qr_level ...
- Java中随机数生成的问题
[生成随机数序列] 我们只能利用Math.random()方法只能生成一个在[0,1)之间的double类型浮点数. 但如果我们想要生成[min, max]之间的随机整数时该怎么办呢? 此时可以用: ...
- 查看name的状态,是属于active还是standby
sudo -E -u hadoop /home/hadoop/bin/hdfs haadmin -getServiceState nn1 sudo -E -u hadoop /home/hadoop/ ...