如果if判断中存在多个表达式判断,需要使用逻辑运算符。 例如有一个变量a,需要判断是否在1到5之间,那么则需要判断a是否大于1且a小于5。这个时候需要使用and逻辑运算符进行判断。 and python中使用and判断左右两边表达式是同时正确,正确时返回最后一个对象(或者说值),错误时返回第一个对象(或者说值)。
a=10
if a>1 and a<5:
print('a在1和5之间')
else:
print('a不在1和5之间')
以上代码判断a变量是否大于1,并且a是否小于5,使用and逻辑运算符将要判断左右两边的值是否都是判断正确,或者说左右两边的判断值是否都为真,都为真的话使用and连接起来的表达式才为真,假设其中有一个为错,那么使用and连接起来的表达式就为假。 以上代码运行的结果如下:
我们把a的值改为2,and连接的左右两边的运算结果都成立,都为真,运行结果如下:
or python中使用or判断左右两边表达式是否有一个正确,正确时返回第一个对象(或者说值),如果左右两边都是错误,那么则为False。
or和and的区别为:
not not在做运算时,用来为值取反,not True则为False,not False 则为True。 假设一个表达式 1>10 为真,使用not 1>10,整个表达式的值会取反,真的话就为假,假的话就为真。
代码为:
a=0
if not a>1:
print('a在1和5之间')
else:
print('a不在1和5之间')
以上代码即时a等于0的时候判断条件还未真,执行了原本正确的代码块。 结果为: