关于或者&和操作员

时间:2018-04-06 07:53:54

标签: python python-3.x

逻辑运算符如何(或,和)对字符串或数字起作用?

示例:

print(2 or 3)--> o/p: 2
print('two' or 'three')--> o/p: 'two'

我想知道它的内部工作原理以及输出背后的原因

1 个答案:

答案 0 :(得分:0)

or将“选择”第一件事,如果它不是False,否则第二件事:

print(2 or 3)             # non-0 numbers are True
print('two' or 'three')   # non empty strings are True
print(0 or 3)             # 0 is False
print('' or 'three')      # empty string is False 

输出:

2
two
3
three

某些“事物”被视为False

请参阅and,or,notLogical comparisons

  

可以测试任何对象的真值,以便在if或while中使用   条件或下面布尔运算的操作数。

     

默认情况下,除非其类定义,否则将对象视为true   返回False的 bool ()方法或 len ()方法   当使用对象调用时返回零。 [1]以下是大部分内容   内置对象被视为false:

     
      
  • 常量定义为false:None和False。
  •   
  • 任何数字类型的零:0,0.0,0j,十进制(0),分数(0,1)
  •   
  • 空序列和集合:'',(),[],{},set(),range(0)
  •