python ‘or’ 的具体用法:对于or 一直理解的不透,我想问一下,下面两种写法有没有区别?
a = 'AAAAA'
b = 'BBBBB'
c = 'CCCCC'
mode = 'BBBBB'
if mode == a or b:
print('one parameter or yes')
if mode == a or mode == b:
print('two parameter or yes')
or是连接两个表达式的,它跟c语言里的||是一样一样的
如果写成if mode == a or b,那么mode==a是一个表达式,b是另一个表达式
如果你想写跟mode == a or mode == b等价的表达式,可以写if mode in ('a','b')
有区别的
区别的原因就是在于or优先级比==低,优先编译==,在你这个场景里自己体会一下
只要有一个布尔值为true,计算结果就是true
true or true #----->计算结果为true
true or false #----->计算结果为true
false or true #----->计算结果为true
false or false #----->计算结果为false
例:
a or b
#根据或运算法则
#当a为true时,则输出a
#当a为false时,则输出b
Python 中的 or 关键字表示或者的意思,用于进行逻辑运算和条件判断。
在逻辑运算中,or 表示只要两边有一个为真,整个表达式即为真。举个例子:
a = 1
b = 2
c = a or b
print(c)
输出结果为 1,因为 a 为真,整个表达式即为真,所以 c 的值为 a 的值 1。
在条件判断中,or 用于判断多个条件,只要有一个条件为真,整个条件判断即为真。举个例子:
age = 18
if age < 18 or age > 60:
print('不合法')
else:
print('合法')
输出结果为 '不合法',因为 age 小于 18,满足其中一个条件即为真,整个条件判断即为真。
两种 or 的使用方式的区别在于,第一种方式用于逻辑运算,返回两个值中的一个,而第二种方式用于条件判断,返回多个条件中为真的一个。代码示例如下:
# 逻辑运算中的 or
a = 1
b = 2
c = a or b
print(c) # 输出 1
# 条件判断中的 or
age = 18
if age < 18 or age > 60:
print('不合法')
else:
print('合法')
如果你想判断多个条件,可以使用如下方式:
score = 90
if score >= 90:
print('优秀')
elif score >= 80 or score < 90:
print('良好')
elif score >= 70 or score < 80:
print('一般')
else:
print('不及格')