zoukankan      html  css  js  c++  java
  • python条件赋值笔记day01

    群里看到有人简单讲解了python条件判断的or和and判断,非常有意思,mark一下

    问题描述:  

    a = 10 or 20
    a = 10 and 20
    a = 0 or 30
    a = 30 or 0
    a = 0 and 30
    a = 30 and 0
    

     你是否知道每一个a的准确结果?

     你做对了么?

    群里大佬的解读:

    and的作用,两侧中含0,返回0; 均为非0时,返回后一个值
    or的作用,两侧中至少有一个非0时,返回第一个非0
    所以从用法上来说and和or与if有着本质上的区别,if是判断后面一个代码块是否为真,而and和or是综合判断两个代码块。

    我的理解:

      两侧代码块没有0 两侧代码块有0
    or 取左侧代码块的值 非0
    and 取右侧代码块的值 取0

    知乎上有个解释清晰明了:

    “短路原则”:

    1. or左边代码块只要返回了真值,就会终止对右边代码块取值,直接返回左边代码块的值

    2. and是左右两侧代码块均返回了真值,返回的是右边代码块的值。如果两侧有一边为假值,则只会返回假值

  • 相关阅读:
    Scala学习笔记
    flume ng 1.3 安装(转)
    学习scala trait
    scala性能测试
    scala容器使用
    hdu 4607 Park Visit
    FZU 1591 Coral的烦恼
    fzu 1675 The Seventy-seven Problem
    hdu 4602 Partition
    zoj 1842 Prime Distance
  • 原文地址:https://www.cnblogs.com/juranus1412/p/14128705.html
Copyright © 2011-2022 走看看