zoukankan      html  css  js  c++  java
  • 复习知识点-没搞清楚的总结

    1.短路计算问题

    在廖雪峰的python教程中有关于短路计算的解释为:

    1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

    2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

    这里我将此“短路计算”提取为“影响计算”,即and和or的值为起决定作用的那个值。

    a and b时:

     如果a为true,起决定作用的是b(b为true时,整个结果为true;b为false时,整个结果为false),所以返回的是b

     如果a为false,起决定作用的就是a,因为无论b为true还是false,整个结果都因为a为false而为false,所以返回的是a

    a or b时也是同理:

     如果a为true,起决定作用的就是a,因为只要a为true,整个结果都是true,所以返回的是a

    如果a为false,起决定作用的就是b,因为整个结果都是b,返回的也是b

    以上叙述得知,and和or运算的取值都是取决于起决定因素的那个值的


    #4、短路运算面试题:
    >>> 1 or 3
    1
    真or假 --》真 1
    
    >>> 1 and 3
    3
    真and假 --》假 3
    
    >>> 0 and 2 and 1
    0
    假and真--》假0       后续一样不用做了 --》假0
    
    >>> 0 and 2 or 1
    1
    真and假--》假2or真--》真 1
    
    >>> 0 and 2 or 1 or 4
    1and 真--》假0 or真 --》真1 or不用做了 --》1
    
    >>> 0 or False and 1
    False 
    False and真--》False or不用做 --》假 False
  • 相关阅读:
    catch tcl tk
    C语言的指针深入理解外加一精华帖
    Linux Shell编程4
    shell之测试语法
    linux 用户空间 和 内核空间 延时函数
    linux 用户空间 和 内核空间 延时函数
    C语言的指针深入理解外加一精华帖
    面向对象的编程技巧
    awk用法小结
    awk用法小结
  • 原文地址:https://www.cnblogs.com/xiao-zang/p/13028547.html
Copyright © 2011-2022 走看看