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中的控制流的更多相关文章

  1. 归纳整理Python中的控制流语句的知识点

    归纳整理Python中的控制流语句的知识点 Python 解释器在其最简单的级别,以类似的方式操作,即从程序的顶端开始,然后一行一行地顺序执行程序语句.例如,清单 1 展示了几个简单的语句.当把它们键 ...

  2. 9、python中的控制流

    学习完python的基础与数据后,我们就可以编写一些简单的命令了.但这时我们发现,目前位置写出来的程序都是自上而下顺序地执行的.要想程序改变这种自上而下的流程多一点变化,我们就要学习三种程序中的语句. ...

  3. Python基础之控制流

    介绍一些Python的基本的东西,你会发现,Python真的很简单.我也尽可能说得简单一些,因为我理解的也很简单. 在到目前为止我们所见到的程序中,总是有一系列的语句,Python忠实地按照它们的顺序 ...

  4. 《python解释器源码剖析》第11章--python虚拟机中的控制流

    11.0 序 在上一章中,我们剖析了python虚拟机中的一般表达式的实现.在剖析一遍表达式是我们的流程都是从上往下顺序执行的,在执行的过程中没有任何变化.但是显然这是不够的,因为怎么能没有流程控制呢 ...

  5. Python中的并发编程

    简介 我们将一个正在运行的程序称为进程.每个进程都有它自己的系统状态,包含内存状态.打开文件列表.追踪指令执行情况的程序指针以及一个保存局部变量的调用栈.通常情况下,一个进程依照一个单序列控制流顺序执 ...

  6. 可爱的 Python : Python中函数式编程,第一部分

    英文原文:Charming Python: Functional programming in Python, Part 1 摘要:虽然人们总把Python当作过程化的,面向对象的语言,但是他实际上包 ...

  7. python中的协程及实现

    1.协程的概念: 协程是一种用户态的轻量级线程.协程拥有自己的寄存器上下文和栈. 协程调度切换时,将寄存器上下文和栈保存到其他地方,在切换回来的时候,恢复先前保存的寄存器上下文和栈. 因此,协程能保留 ...

  8. 协程及Python中的协程

    1 协程 1.1协程的概念 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程:协程是一种用户态的轻量级线程.(其实并没有说明白~) 我觉得单说协程,比较抽象,如果对线程有一定了解 ...

  9. 【python中调用shell命令使用PIPE】使用PIPE作为stdout出现假卡死的情况——将stdout重定向为输出到临时文件

    在Python中,调用:subprocess.Popen(cmd, stdout = PIPE, stderr = PIPE, shell= true)的时候,如果调用的shell命令本身在执行之后会 ...

随机推荐

  1. this and super

    this 和 super 的区别:this, 先从本类找属性和方法,本类找不到再从父类找.super, 从父类找. this 和 super 都可以调用构造方法,所以this() 和 super() ...

  2. 带你从零学ReactNative开发跨平台App开发(十)

    ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...

  3. 深入理解net core中的依赖注入、Singleton、Scoped、Transient(一)

    相关文章: 深入理解net core中的依赖注入.Singleton.Scoped.Transient(一) 深入理解net core中的依赖注入.Singleton.Scoped.Transient ...

  4. redis介绍(1)命令介绍

    redis 的五大基本类型的简单命令 对key--value中的value的一些简单命令 keys * 查询redis中的所有key exists key 查询key是否存在 flushdb 清空当前 ...

  5. apache ftp server的简单入门(properties验证)

    Apache FTPServer:(开源) Apache FTPServer是一个100%纯Java的FTP服务器. 它的设计是基于现有的开放式协议的完整和便携式FTP服务器引擎解决方案.FTPSer ...

  6. CSS 小结笔记之盒子模型

    网页标签可以看成是一个个盒子,页面设计就像垒积木一样,在网页中将盒子摆好显示出来.在浏览器中可以很清楚的去看到一个标签的盒子,具体方法如下: 打开浏览器的开发人员工具,在Elements中选中一个标签 ...

  7. d3js path generator vs layouts

    我们知道d3的一般套路就是d3.selectAll('path.mypath').data(yourDataset).enter().append('path').attr('class','mypa ...

  8. nginx 的socket 选项处理--TCP_DEFER_ACCEPT

    在nginx listen配置项的说明中有一个选项: deferred -- indicates to use that postponed accept(2) on Linux with. the ...

  9. java笔记--线程休眠sleep()的运用

    线程休眠sleep()方法的运用 在多线程编程中,有时需要让某个线程优先执行.除了可以设置这个线程的优先级为最高外,更加理想的方法是休眠其他线程,若有线程中断了正在休眠的线程,则抛出Interrupt ...

  10. 使用CoreData [1]

    使用CoreData [1] 本篇教程能教你从无开始接触CoreData,包括新建工程,创建出实体,增删改查样样都有,属于使用CoreData最初级教程. 1. 创建带有CoreData的工程项目 2 ...