人生与戏

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

逻辑运算符
  not 非 ; and 与; or 或。

  1.  not 逻辑非结果只有 TrueFalse
     not可以对符号右侧的值进行非运算
     对于布尔值,非运算会对其进行取反操作,True变False,False变True
     对于非布尔值,非运算会先将其转换为布尔值,然后再取反。
      字符串,有内容为True,空字符串为False.
      数字,0 为 False ,其它 为 True .

  2.  and 逻辑与
     and可以对符号两侧的值进行与运算
     只有在符号两侧的值都为True时,才会返回True,只要有一个False就返回False
     与运算是找False的
     Python中的与运算是短路的与,如果第一个值为False,则不再看第二个值

    2.1  符号两侧的值为 True 和 False(boolean布尔值)  结果只有 True 和 False
    当两侧都为 True 时, 结果才为 True 。其它结果为 False 。


    2.2  符号两侧的值为 数字    结果右侧值 或 0
    当两侧值全非0时,结果取符号右侧值; 当两侧至少有一个值为0时, 结果 为 0 。

    2.3 符号两侧的值为 字符串结果右侧值 或 (输出)空行
    当两侧值为非空字符串时, 结果取符号右侧值; 当两侧至少有一个值为空字符串时,结果 为(输出)空行

  3. or 逻辑或

     or 可以对符号两侧的值进行或运算
     或运算两个值中只要有一个True,就会返回True
     或运算是找True的
     Python中的或运算是短路的或,如果第一个值为True,则不再看第二个值
    3.1 符号两侧的值为 True 和 False(boolean布尔值)  结果只有 True 和 False
    当两侧值都为False , 结果才为 False 。

    3.2 符号两侧的值为 数字    结果为 数字0
    当两侧非0, 结果取左侧值;
    当其中一值为 0 ,另一值为 非0, 结果取非0值;
    当两侧为0, 结果为 0 。

    3.3 符号两侧的值为 字符串, 结果为 字符串(输出)空行
    当两侧非空, 结果取左侧值;
    当其中一值为 空 ,另一值为 非空, 结果取非空值;
    当两侧为空, 结果为 输出空行 。

    3.4 符号两侧的值为数字与boolean结果为 数字,Boolean值。 非0 , 0 , True,False。
    当两侧非0或非False, 结果取左侧值;
    当两侧一值非0或非False,另一值为0或False, 结果取非0或True。
    当两侧为 0,False, 结果为 右侧值

总结:非布尔值的与或运算

 

posted on 2019-06-30 22:56  人生与戏  阅读(14549)  评论(0编辑  收藏  举报