• 技术文章 >常见问题 >Python常见问题

    python中的elif语句报错是什么原因

    silencementsilencement2019-08-28 14:48:26原创7367

    else和elif语句也可以叫做子句,因为它们不能独立使用,两者都是出现在if、for、while语句内部的。else子句可以增加一种选择;而elif子句则是需要检查更多条件时会被使用,与if和else一同使用,elif是else if 的简写。

    if和else语句使用方法

    下面用一个例题来说明if和else语句是如何搭配使用的,首先设定一个整型变量,我们来看看这个变量是是比0大还是比0小。

    >>>num = 0
    >>>if num > 0 :
    >>>    print '这个数比0大'
    >>>else :
    >>>    print '这个数比0小'

    首先程序判断了if语句的条件是否为真,如果是真,if语句块内容会被执行。如果这个num > 0,那么print '这个数比0大'会被执行。但num = 0,显然if语句的条件为假,对应语句块不会被执行;如果第一个语句块没被执行,那么就会执行第二个语句块。

    程序计算结果是‘这个数比0小’,有的人会有疑问了,应该是这个数等于0的结果更确切一些。那么为什么会出现这样的结果呢?拿案例中的数据来说,if和else语句的判断检查方式是,如果num > 0就输出 '这个数比0大' ,否则输出 '这个数比0小' 。因为else没有条件可设置,所以if条件不能被满足为假时,else子句块就会被无条件输出。

    对于这道题来说,我们要再给它加一个条件,这样得到的结果会更正确些,这时就会用到elif子句了。

    if和else、elif语句使用方法

    >>>num = 0
    >>>if num > 0 :
    >>>    print '这个数比0大'
    >>>elif num < 0 :
    >>>    print '这个数比0小'
    >>>else :
    >>>    print '这个数是0'

    程序分别对if和elif做了判断,如果条件不为真,则输出else的语句块内容。程序运行结果是:这个数是0

    if和else、elif语句使用时要注意以下两点:

    1、else、elif为子块,不能独立使用

    2、一个if语句中可以包含多个elif语句,但结尾只能有一个else语句

    else在while、for循环语句中的作用

    python中,可以在while和for循环中使用else子句,它只是在循环结束之后才会被执行,如果同时使用了break语句那么else子句块会被跳过。所以注意else子句和break语句不能同时使用!

    专题推荐:elif
    上一篇:python中一个数的平方怎么表示 下一篇:python如何给字典排序

    相关文章推荐

    • python能重写方法吗• python中list有哪些方法

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网