• 技术文章 >后端开发 >Python教程

    Python循环语句中else的用法总结

    高洛峰高洛峰2017-02-23 11:32:16原创1017
    前言

    本文讨论Python的for…elsewhile…else等语法,这些是Python中最不常用、最为误解的语法特性之一。

    Python中的forwhile等循环都有一个可选的else分支(类似if语句和try语句那样),在循环迭代正常完成之后执行。换句话说,如果我们不是以除正常方式以外的其他任意方式退出循环,那么else分支将被执行。也就是在循环体内没有break语句、没有return语句,或者没有异常出现。

    下面我们来看看详细的使用实例。

    一、 常规的 if else 用法

    x = True
    if x:
     print 'x is true'
    else:
     print 'x is not true'

    二、if else 快捷用法

    这里的 if else 可以作为三元操作符使用。

    mark = 40
    is_pass = True if mark >= 50 else False
    print "Pass? " + str(is_pass)

    三、与 for 关键字一起用

    在满足以下情况的时候,else 下的代码块会被执行:

    1、for 循环里的语句执行完成

    2、for 循环里的语句没有被 break 语句打断

    # 打印 `For loop completed the execution`
    for i in range(10):
     print i
    else:
     print 'For loop completed the execution'
    # 不打印 `For loop completed the execution`
    for i in range(10):
     print i
     if i == 5:
     break
    else:
     print 'For loop completed the execution'

    四、与 while 关键字一起用

    和上面类似,在满足以下情况的时候,else 下的代码块会被执行:

    1、while 循环里的语句执行完成

    2、while 循环里的语句没有被 break 语句打断

    # 打印 `While loop execution completed`
    a = 0
    loop = 0
    while a <= 10:
     print a
     loop += 1
     a += 1
    else:
     print "While loop execution completed"
    # 不打印 `While loop execution completed`
    a = 50
    loop = 0
    while a > 10:
     print a
     if loop == 5:
     break
     a += 1
     loop += 1
    else:
     print "While loop execution completed"

    五、与 try except 一起用

    try except 一起使用时,如果不抛出异常,else里的语句就能被执行。

    file_name = "result.txt"
    try:
     f = open(file_name, 'r')
    except IOError:
     print 'cannot open', file_name
    else:
     # Executes only if file opened properly
     print file_name, 'has', len(f.readlines()), 'lines'
     f.close()

    总结

    关于Python中循环语句中else的用法总结到这就基本结束了,这篇文章对于大家学习或者使用Python还是具有一定的参考借鉴价值的,希望对大家能有所帮助,如果有疑问大家可以留言交流。

    更多Python循环语句中else的用法总结相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:python if else
    上一篇:python获取list下标及其值的简单方法 下一篇:python字典键值对的添加和遍历方法
    千万级数据并发解决方案

    相关文章推荐

    • python列表详解(总结分享)• 详细了解Python进程池与进程锁• 一起聊聊Python的编码样式• 带你搞懂Python反序列化• 归纳整理!Python实用技巧总结
    1/1

    PHP中文网