逻辑运算符如何(或,和)对字符串或数字起作用?
示例:
print(2 or 3)--> o/p: 2
print('two' or 'three')--> o/p: 'two'
我想知道它的内部工作原理以及输出背后的原因
答案 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,not和Logical comparisons:
可以测试任何对象的真值,以便在if或while中使用 条件或下面布尔运算的操作数。
默认情况下,除非其类定义,否则将对象视为true 返回False的 bool ()方法或 len ()方法 当使用对象调用时返回零。 [1]以下是大部分内容 内置对象被视为false:
- 常量定义为false:None和False。
- 任何数字类型的零:0,0.0,0j,十进制(0),分数(0,1)
- 空序列和集合:'',(),[],{},set(),range(0)