逻辑运算
Python当中可以用and
、or
、not
关键字来进行与、或、非逻辑运算,而True
、False
则用于表示布尔值中的真与假:
t = True
f = False
print(t and t)
print(t and f)
print(f and f)
print(t or t)
print(t or f)
print(f or f)
print(not t)
print(not f)
运行结果:
True
False
False
True
True
False
False
True
除了True
、False
外,其它类型的值也可以转换为对应的布尔值,通常数字中0为假,非0为真,字符串中空字符串为假,非空字符串为真,使用bool
函数可以进行转换:
number_100 = 100
number_0 = 0
print(bool(number_100))
print(bool(number_0))
string_text = "nice to meet you"
string_empty = ""
print(bool(string_text))
print(bool(string_empty))
运行结果:
True
False
True
False
由于很多类型都可以转换成布尔型,这意味着并非只有True
、False
可以进行逻辑运算:
print(100 and 100)
print(100 and 0)
print(0 or 0)
print(0 or 100)
运行结果:
100
0
0
100
比较运算
Python当中可以使用>
、>=
、==
、<=
、<
、!=
符号来进行值的比较:
A > B
: 若A大于B则返回真否则返回假A >= B
: 若A大于或等于B则返回真否则返回假A == B
: 若A等于B则返回真否则返回假A <= B
: 若A小于或等于B则返回真否则返回假A < B
: 若A小于B则返回真否则返回假A != B
: 若A不等于B则返回真否则返回假
print(100 > 1)
print(-100 < 1)
print("hello" != "world")
运行结果:
True
True
True
优先级
Python当中的表达式具备优先级别,计算表达式中* / %
优先于+ -
:
print(1 - 2 * 3)
运行结果:
-5
计算表达式则整体优先于比较表达式:
print(1 > 2 - 3)
运行结果:
True
比较表达式则整体优先于逻辑表达式:
print(1 or 2 < 3)
运行结果:
1